开发者

How to insert new row to database with AUTO_INCREMENT column without specifying column names?

I have a table with the following columns:

  • id - INT UNSIGNED AUTO_INCREMENT
  • name - VARCHAR(20)
  • group - VARCHAR(20)

I know that I can add a row like this:

INSERT INTO table_name (name, group) VALUES ('my name', 'my group')

I wonder if there is a way to add a row without specifying the column names, like when there is no AUTO_INCREMENT col开发者_如何学运维umn ?


For some databases, you can just explicitly insert a NULL into the auto_increment column:

INSERT INTO table_name VALUES (NULL, 'my name', 'my group')


Even better, use DEFAULT instead of NULL. You want to store the default value, not a NULL that might trigger a default value.

But you'd better name all columns, with a piece of SQL you can create all the INSERT, UPDATE and DELETE's you need. Just check the information_schema and construct the queries you need. There is no need to do it all by hand, SQL can help you out.


Just add the column names, yes you can use Null instead but is is a very bad idea to not use column names in any insert, ever.

0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜