16

我有一张有很多列的表。列的总数尚未指定,并且会定期更改。

在我的插入查询中,我只需要将两个值放入表中。所有其他值将是“”。有没有办法只指定第一个字段,而不必包含 '','','',''...?请看下面的例子:

我想要这个:

$query = mysql_query("INSERT INTO table VALUES('','$id')");

而不是这样:

$query = mysql_query("INSERT INTO table VALUES('','$id','','','','','',''......and on and on...)");

有没有办法做到这一点?谢谢!

4

4 回答 4

27

是的,在表名之后指定列名:

INSERT INTO table (column1, column2) VALUES ('','$id')
于 2012-10-01T09:52:30.453 回答
8

我更喜欢

INSERT INTO table SET columnA = 'valueA', columnB = 'valueB'
于 2012-10-01T09:55:46.843 回答
5
INSERT INTO table_name (column1, column2) VALUES (value1, value2)

http://www.w3schools.com/php/php_mysql_insert.asp

于 2012-10-01T09:56:10.790 回答
3

只需定义您将插入的字段,

例如:

INSERT INTO table (fieldA, fieldB) VALUES('','$id')

缺少的字段将具有该字段的默认值

于 2012-10-01T09:52:47.370 回答