簡體   English   中英

如何使用AUTO_INCREMENT列將新行插入數據庫而不指定列名?

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

我有一個包含以下列的表:

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

我知道我可以像這樣添加一行:

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

我想知道是否有一種方法可以在不指定列名的情況下添加行,例如沒有AUTO_INCREMENT列時?

對於某些數據庫,您只需在auto_increment列中顯式插入NULL

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

更好的是,使用DEFAULT而不是NULL。 您希望存儲默認值,而不是可能觸發默認值的NULL。

但是你最好用所有列命名,用一段SQL你可以創建你需要的所有INSERT,UPDATE和DELETE。 只需檢查information_schema並構建您需要的查詢。 沒有必要手動完成,SQL可以幫助你。

只需添加列名稱,是的,您可以使用Null,但是在任何插入中都不使用列名是一個非常糟糕的主意。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM