1. 程式人生 > >MySQL資料表中怎麼給已經有主鍵自增的表加入資料

MySQL資料表中怎麼給已經有主鍵自增的表加入資料

MySQL資料庫表中有自增主鍵ID,當用SQL插入語句中插入語句帶有ID列值記錄的時候;

  1. 如果指定了該列的值,則新插入的值不能和已有的值重複,而且必須大於其中最大的一個值;
  2. 也可以不指定該列的值,只將其他列的值插入,讓ID還是按照MySQL自增自己填

具體如下:


create table if not exists userInfo (
id int PRIMARY KEY AUTO_INCREMENT,
name varchar(50) NOT NULL,
password varchar(50) NOT NULL
)
1
2
3
4
5

2.插入資料記錄

insert into userInfo values(1,'aaa','1212');

結果返回 1 成功

當資料表中有自增長主鍵時,當用SQL插入語句中插入語句帶有ID列值記錄的時候; 
如果指定了該列的值,則新插入的值不能和已有的值重複,而且必須大於其中最大的一個值;
也可以不指定該列的值,只將其他列的值插入,讓ID還是按照MySQL自增自己填; 
這種情況在進行插入的時候,兩種解決方法: 
①可以把id的值設定為null或者0,這樣子mysql都會自己做處理 
②手動指定需要插入的列,不插入這一個欄位的資料!
 

#方法①:
insert into userInfo values(null,'ddf','8979');
insert into userInfo values(0,'ddf','8979');

輸出 ID
1
2
3

#方法②:
insert into userInfo(name,password) values('ddf','8979');
1
2

 

總結: 有自增id的時候,填null或者0;

方法2 是隻更新需要欄位。往往很多時候需要插入更多的欄位 填起來比較複雜。 

所以採用方法1 填null,或者0;

親測有效!!