求insert itno 命令详解

来源:百度知道 编辑:UC知道 时间:2024/06/01 05:59:27
在PHP环境中插入数据
数据库为mysql

INSERT [LOW_PRIORITY | DELAYED] [IGNORE]
[INTO] tbl_name [(col_name,...)]
VALUES (expression,...),(...),...
或 INSERT [LOW_PRIORITY | DELAYED] [IGNORE]
[INTO] tbl_name [(col_name,...)]
SELECT ...
或 INSERT [LOW_PRIORITY | DELAYED] [IGNORE]
[INTO] tbl_name
SET col_name=expression, col_name=expression, ...

INSERT把新行插入到一个存在的表中,INSERT ... VALUES形式的语句基于明确指定的值插入行,INSERT ... SELECT形式插入从其他表选择的行,有多个值表的INSERT ... VALUES的形式在MySQL 3.22.5或以后版本中支持,col_name=expression语法在MySQL 3.22.10或以后版本中支持。

tbl_name是行应该被插入其中的表。列名表或SET子句指出语句为那一列指定值。

如果你为INSERT ... VALUES或INSERT ... SELECT不指定列表,所有列的值必须在VALUES()表或由SELECT提供。如果你不知道表中列的顺序,使用DESCRIBE tbl_name来找出。
任何没有明确地给出值的列被设置为它的缺省值。例如,如果你指定一个列表并没命名表中所有列,未命名的列被设置为它们的缺省值。缺省值赋值在7.7 CREATE TABLE句法中描述。
一个expression可以引用在一个值表先前设置的任何列。例如,你能这样:
mysql> INSERT INTO tbl_name (col1,col2) VALUES(15,col1*2);

但不能这样:

mysql> INSERT INTO tbl_name (col1,col2) VALUES(c