因为这几天有其他事情,一直没继续学习,真是罪过.
今天主要复习了下DML语句。
DML操作是针对数据库中表记录的操作,主要包括记录的插入(insert)、更新(update)、删除(delete)和查询(select)。
1.插入记录(insert)
- insert into tablename (filed1,…,fieldn) values (value1,…,valuen)
e.g: insert into emp (ename,hiredate,sal,deptno) values (‘hialex’,'2000-01-01′,’2000′,1);
- 也可以不指定字段,但是values后面的顺序应该和字段的排列顺序一致。
e.g: insert into emp values (‘lisa’,'2003-02-01′,’3000′,2);
- 在列表中没有写的字段,是可空字段的设置为NULL,非空有默认值的设置为默认值,自增字段设置为自增的下一个数字
- 在MySQL中可以一次插入多条记录:
e.g: insert into dept values(5,’dept5′),(6,’dept6′);
2.更新字段(update)
- update tablename set field1=value1,…,fieldn=valuen [where condition];
e.g: update emp set sal=4000 where ename=’lisa’;
- 在MySQL中,update命令可同时更新多个表中数据
e.g: update t1,t2,…,tn set t1.field1=exper1,…,tn.fieldn=expern [where condition];
- 注:多表更新的语法更多的用在根据一个表的字段来动态更新另一个表的字段
3.删除字段(delete)
- delete from tablename [where condition]
e.g: delete from emp where ename=’dony’;
- 在MySQL中可以一次删除多个表的数据
delete t1,t2,…,tn from t1,t2,…,tn;
- 如果from后面的表名用别名,则delete后面也要用相应的别名
- 注:不论是单表还是多表,不加where条件就会把表的所有记录删除
阅读全文…
alex MySQL dml, MySQL, 笔记
这本书的第一章介绍了Mysql的下载、安装,由于我只有Windows环境,所以就一路Next的安装配置完成,并没有什么好说的。
第二章介绍了(My)SQL基础,主要讲了一些SQL语法和Mysql在SQL标准上的某些关键字扩展。
昨天主要学习了DDL语句:
- 创建数据库
- 显示所有数据库
- 删除数据库
- 选择数据库
- 显示所有表
- 创建表
- create table tablename ( col_name_1 col_type_1 constraints , col_name_2 colu_type_2 constraints,……,col_name_n col_type_n constraints)
- 查看表定义
- 查看更详细的表定义(查看创建表的SQL语句)
- show create table tablename (\G);
- \G:使得记录能够按照字段竖着排列,对于内容比较长的记录更容易显示
- 删除表
- 修改表
- 修改表类型
- alter table tablename modify [column] col_definition [first|after col_name]
- e.g: alter table emp modify ename varchar(20);
- 增加表字段
- alter table tablename add [column] col_definition [first|after col_name]
- e.g: alter table emp add [column] age int(3);
- 删除表字段
- alter table tablename drop [column] col_definition [first|after col_name]
- e.g: alter table emp drop [column] age;
- 注意:change和modify都可以修改表定义,不同的是change后面需要写两次列名,不方便,但是change的有点是可以修改列名称,modify则不能。
- 字段改名
- alter table tablename change[column] old_col_name col_definition [first|after col_name]
- e.g: alter table emp change age age1 int(4);
- 修改字段排列顺序
- 在add/change/modify定义中都有first|after col_name,这个选项用于修改字段在表中的位置,默认add增加的新字段是加在表的最后位置,而change/modify默认不会改变字段位置
- e.g1: alter table emp add birth date after ename;
- e.g2: alter table emp modify age int(3) first; age字段将置于最前面
- 更改表名
- alter table tablename rename [to] new_table_name
- e.g: alter table emp rename emp1;
- 注意:chage/first|after column 这些关键字属于Mysql在标准SQL上的扩展,在其他数据库上不一定适用。
alex MySQL ddl, MySQL, 笔记
大三下学期我们开了数据库这门课,作为一个非计算机专业,数据库这么专业基础课在老
师看来就是不是太重要了,上课也就这么讲讲,简单涉及一下,课时也较计算机专业少了不少,我当时是还算认真的学习了这么课,考试也还凑合,但是作为志在从事软件行业的我来讲,越发感觉数据库是很重要的,而我那点掌握是远远不够的,由于后来时间也比较少,一直忙于其他的事情,想深入学习数据库的愿望一直落空,现在时间多了,我打算在我的毕业设计中也要设计数据库存储方面,所以现在正好好好系统的学习一下。
上课的时候选择的DBMS是MSSQL,我想很多学校都是这样吧!但是这次学习我想学习MySQL,至于MySQL的优点我就不说了,也算赶次时髦吧!
我采用的教材是由网易DBA组编写的《深入浅出MySQL–数据库开发、优化与管理维护》,我对网易这个网站,这家公司印象都挺好。网上有人评价这本书并不是太好,呵呵,但是我感觉对我来说够了,再说,这是图书馆借的,没花钱,不好再换!哈哈~
认真学习Mysql,认真做好笔记,认真实践,早日掌握Mysql!
alex MySQL MSSQL, MySQL, 笔记, 网易
最新评论