insert语句不会产生任何的返回。第一个null值为id值,为自动增长。
1.其中id值为自动增长类型,无需对其进行赋值。
2.当字段列中,允许使用null值时,不插入字段值就以null代替。
3.当字段列中,有默认值时,不插入字段值就以默认值代替。
4.当字段列中,未设置允许使用null值且未设置默认值,而字段值又未插入,则会报错。
5.当多个用户访问数据库时,可能需要对操作进行优先级排序。使用low_priority降低insert语句的优先级。insert low_priority into
insert into customers(cust_name,cust_address,cust_city,cust_state,cust_zip,cust_country) values('Pep E','100 Main Street','Los Angeles','CA','90046','USA'),
(‘M.Martian’,‘42 Galaxy Way’,‘New York’,‘NY’,‘11213’,‘USA’);
这种方式可以提高insert语句的性能,因为插入单条insert语句比插入多条insert语句快。
insert into customers (name) select name from new_customers where id = 9;
语句由insert into和select语句共同组成。这条语句插入多少行取决于select语句检索出多少行。当检索出来的结果为空,语句也不会发生错误,表示没有行插入。
update t_right set name = (select name from t_fenshu where id = 11) where id = 5;
更新的数据由select语句提供。
当update语句更新多行数据时,有一行或者多行发生错误,则整个update更新语句取消。使用update语句则可以即使发生错误,仍然继续进行更新操作。
update ignore table set…
delete删除是特定行,若要删除整列,则要使用update语句。
1.where过滤条件时,尽量使用主键过滤。
2.在使用update和delete语句前,先使用select语句对其过滤条件进行核查是否正确。
3.使用update和delete语句必须带有where子句。
1.每个表中,只允许有一个auto_increment的列,而且这个列必须被索引。
2.当新增一条数据,不知道主键是多少时,可以使用select last_insert_id()函数获得新增的id值。
create table customes (cust_id int not null auto_increment,quantity int not null default 1)
对指定列quantity设置默认值1。