成人在线亚洲_国产日韩视频一区二区三区_久久久国产精品_99国内精品久久久久久久

您的位置:首頁技術(shù)文章
文章詳情頁

mysql 里邊,自增長id,寫數(shù)據(jù)時,是先把數(shù)據(jù)寫進去,然后再給這條數(shù)據(jù)一個id,還是先給id,然后再把要插入的數(shù)據(jù)寫進去

瀏覽:123日期:2022-06-12 17:49:45

問題描述

mysql 里邊,自動增長的id , 現(xiàn)在如果往里邊寫一條數(shù)據(jù),里邊的具體過程,是先把數(shù)據(jù)寫進去,然后再給這條數(shù)據(jù)一個id,還是先給id,然后再把要插入的數(shù)據(jù)寫進去。好奇一下

問題解答

回答1:

MYSQL已經(jīng)算好了下次需要填寫的自增ID了

如下圖所示.數(shù)據(jù)庫有62行,自增值到了63.

mysql 里邊,自增長id,寫數(shù)據(jù)時,是先把數(shù)據(jù)寫進去,然后再給這條數(shù)據(jù)一個id,還是先給id,然后再把要插入的數(shù)據(jù)寫進去

未指定ID則MYSQL自己填寫,如果填寫小于自動遞增,則報錯!如果填寫大于自動遞增,則自動遞增變成填寫數(shù)+1

獲取插入ID:MYSQLI : mysqli_insert_id方法PDO : PDO::lastInsertId方法MYSQL : mysql_insert_id方法

其中MYSQL方式連接數(shù)據(jù)庫已棄用,可能在未來版本移除

下面這條SQL可以實現(xiàn)你要的需求,但是我不確定這么干好不好,還有數(shù)據(jù)結(jié)構(gòu)設(shè)置成這樣,真的好嗎?

INSERT INTO sta_log_fun(`FCNAME`,`STATUS`) VALUES(’WOQU’,(SELECT auto_increment FROM information_schema.`TABLES` WHERE TABLE_SCHEMA=’test2’ AND TABLE_NAME=’sta_log_fun’));

效果如下圖:mysql 里邊,自增長id,寫數(shù)據(jù)時,是先把數(shù)據(jù)寫進去,然后再給這條數(shù)據(jù)一個id,還是先給id,然后再把要插入的數(shù)據(jù)寫進去

回答2:

沒去研究過,但是我猜想是不是和我們手動插入數(shù)據(jù)一樣,是一同寫入的。獲取當(dāng)前表id的最大值,加上設(shè)定的自增值,放入數(shù)據(jù)一同插入。。。。