Chinaunix首页 | 论坛 | 博客
  • 博客访问: 104752
  • 博文数量: 23
  • 博客积分: 555
  • 博客等级: 中士
  • 技术积分: 320
  • 用 户 组: 普通用户
  • 注册时间: 2011-11-14 11:04
文章分类

全部博文(23)

文章存档

2012年(23)

我的朋友

分类: Mysql/postgreSQL

2012-05-14 22:05:17

SQL的数据定义语言(DDL)部分主要面向表和数据库:
创建:create database/table
修改:alter database/table 
删除:drop database/table
/* alter即键盘上的Alt(er)键的语义 */

SQL的数据操作语言(DML)部分主要面向表中的记录,就是四个功能:
增:insert into
删: delete from where
改: update set where
查: select from where


现使用MySql实践SQL。
1,进入MySql创建数据库,并切换到所创建的数据库:
  1. show databases;
  2. create database test;
  3. --Query Ok, 1 row affected (0.00 sec)--
  4. /* 思考:为什么是"1 row affected",row在哪儿 */

  5. show databases;
  6. use test;
  7. select database();
2,创建一个测试用表:
  1. show tables;
  2. create table students
  3. (
  4. id int(2),    # 2指示int的最大位数为2
  5. name varchar(8) # 8指示varchar的最大长度为8
  6. );
  7. show tables;
  8. desc students;
3, 修改这个表:
  1. alter table students add column *** int(1);
  2. desc students;
  3. alter table students drop column ***;
  4. desc students;
  5. alter table students change id id(4) not null primary key;
  6. desc students;

4, 现在我们便可以使用数据操作语言(DML)来进行记录级的操作:
  1. insert into students values (1,"alice") --Query OK--
  2. insert into students values (1,"bob")     --ERROR: Duplicate entry '1' for key 1--
  3. insert into students values (2,"bob")    --Query OK--
  4. insert into students values (3,"cindy") --Query OK--
  5. select * from students;

  6. delete from students where name = "cindy";
  7. select * from students;

  8. update students set name = "bobbod" where id = 2;
  9. select * from students;

  10. select name from students where id = 1;

5,完成基础学习,清理实验平台:
  1. desc students;
  2. select * from students;

  3. show tables;
  4. drop table students;
  5. show tables;

  6. show databases;
  7. drop database test;
  8. show databases;

  9. select database();
阅读(899) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~