数据库之插入操作
创建基本表:
CREATE TABLE `stu` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`name` varchar(4) NOT NULL,
`sex` char(1) DEFAULT '1',
PRIMARY KEY (`id`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8;
1.语法1:
insert into 表名(字段名1,字段名2) values (字段值1,字段值2)
注解:一定是values而不是value
举例:insert into stu(id,name,sex)values(1,'xxx',1);
也可写成 :insert into stu(id,name,sex)values(null,'xxx',1);
也可写成:insert into stu(name,sex)values('xxx',1);.//因为id是主键并且是自增长的,所以添加数据的时候不用在写上id字段和值。
注解:
1.字段的顺序要和数值的顺序保持一致
2.字段列表根据需要填写,字段列表中的字段没有顺序之分。
3.当字段列表省略的时候,使用数据表中的字段顺序来填充。
语法2:insert into 表名 set 字段名1 = 字段值1,字段名2= 字段值2;
举例:insert into stu set name = 'jl',sex = 2;//也是相当于插入一条数据,
语法3:同时插入多条语句 insert into 表名 (字段1,字段2) values (字段值1,字段值2),(字段值1,字段值2);
举例:
insert into stu (name,sex) values ('大大',1),('小小',2);
另一种写法:
insert into stu values (null,'大大',1),(null,'小小',2);//当不写字段名称的时候,插入数据默认是数据表中字段的顺序,所以,必须加null
注解:
1.字段值和字段列表必须一一对应。
2.values ()表示一行信息。即记录。
语法4:蠕虫复制,实现快速数据填充
insert into 表1(字段列表 ) select 字段列表 from 表2;
举例:
insert into (name,sex) select name,sex from stu;
注解:
1.两个数据表的名称可以相同或者不同
2.两个字段列表不一定要一致,但是要一一对应。
小插曲:修改数据表中的某个字段名称:语法:alter table 表名 change 旧字段名称 新字段名称 字段类型 字段属性;