插入数据
1.为表的所有字段插入数据,语法格式:INSERT INTO table_name (colunm_list) VALUES (value_list);
a.INSERT语句后面的列名顺序可以不是表定义时的顺序,即插入数据时,不需要按照表定义的顺序插入,只要保证值的顺序与列字段的顺序相同就可以
b.使用INSERT插入数据时,允许列名称列表column_list为空,此时,值列表中需要为表的每一个字段指定值,并且值的顺序和数据表中字段定义时的顺序相同
2.为表的指定字段插入数据。其他的字段为默认值
3.同时插入多条记录,语法格式:insert into table_name(column_list) values(value_list1),(value_list2)....(value_listn);此时将返回一些插入单行是没有的额外信息,Records:表明插入的记录条数。Duplicates:表明插入时被忽略的记录,Warnings:表明有问题的数据值。
4.将查询结果插入到表中。基本语法格式如下:insert into table_name1 (column_list1) select (column_list2) from table_name2 where (condition) 。column_list2指定数据来源表的查询列,该列表必须和column_list1列表中的字段个数相同,数据类型相同;事实上mysql不关心列名,它根据列的位置插入,列名可以不一样。condition指定 select 语句的查询条件。
更新数据
5.基本语法格式如下:update table_name set colum_name1=value1,colum_name2=value2,...colum_namen=valuen where (condition);
如果忽略where字句,mysql将更新表中所有的行。
删除数据
6.基本语法格式如下:delete from table_name [where<condition>];
[where<condition>]为可选参数,如果没有where子句,delete语句将删除表中的所有记录。
7.如果想删除表中的所有记录,还可以使用truncate table语句,truncate将直接删除原来的表,并重新创建一个表,其语法格式为:truncate table table_name;
truncate直接删除表而不是删除记录,因此执行速度比delete块。