最专业微网站首选公司网页代码大全
对数据库的操作用的最最频繁的呢,总结起来就四个字:增删改查!
查是属于DQL(Data QueryLanguage ,数据查询语言)部分,而增、改、删属于DML(Data Manipulation Language, 数据操纵语言)
增:作用是往数据库的数据表里写入记录值
语法一:
insert into 表名(字段1,字段2,.....)values(对应字段1的值,对应字段2点值,........);
案例:增加一条学生信息到students表中
注意:
①insert记录值时候要保持插入的记录值的类型和表结构设计的类型一致,除了数字类型外,字符串型varchar和日期类型datetime等都应该用单引号包裹起来
②表结构设计中规定不可为空的字段必须插入记录值,可以为null的列在插入的时候可以不写
③表名后的字段列表的顺序必须和values后面的值列表没有严格是顺序限制但必须前后一一对应(内容上一致,还有数量上一致,数据类型一致)
④表名后面的字段列可以连带括号都可以省略,省略后意味着后面的values值列表必须和表结构中所有字段一一对应.(不建议这样用)
INSERT INTO `students`(`sno`,`sname`,`ssex`,`sbirthday`,`class`)VALUES('11234','任波涛','男','1990-1-12','11601')
语法二:
insert into 表名
set 字段名1=值,字段名2=值,........;
案例:增加一条学生信息到students表中
INSERT INTO `students`SET `sno`='114',`sname`='田兴伟',`ssex`='男',`sbirthday`='1990-12-12',`class`='11601';
比较两种语法:
①语法一可以一次性插入多条记录值,语法二不支持
INSERT INTO `students`(`sno`,`sname`,`ssex`,`sbirthday`,`class`)VALUES('132','任波涛','男','1990-1-12','11601'),('133','任波涛','男','1990-1-12','11601'),....;
②语法一可以支持子查询,语法二不支持
INSERT INTO `students`(`sno`,`sname`,`ssex`,`sbirthday`,`class`)select concat(`sno`,'1'),`sname`,`ssex`,`sbirthday`,`class` from studentswhere sno='132';
总结:我们一般情况下用语法一的写法,语法二很少使用