MySQL中不能創(chuàng)建自增字段的解決方法
原因分析:
引起MySQL不能創(chuàng)建自動增加的字段的原因是在MySQL5.0.2版本中的The Server SQL Mode 中新加了幾種 sql_mode,并且在sql的my.ini文件中的sql-mode 默認增加了其中的二種,一個是STRICT_TRANS_TABLES,就是導致auto_increament失敗的mode,這個sql_mode主要用于 當一個值不能插入到表中是,則產生一個錯誤而不是一個警告并終止會話。
解決辦法:
刪除或注釋掉sql_mode.重啟mysql.
將my.ini中的:
# Set the SQL mode to strict
sql-mode="STRICT_TRANS_TABLES,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION"
改為:
# Set the SQL mode to strict[separator]
#sql-mode="STRICT_TRANS_TABLES,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION"
sql-mode="NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION"
相關文章
SQL?ALTER?TABLE語句靈活修改表結構和數(shù)據(jù)類型
這篇文章主要介紹了SQL?ALTER?TABLE語句靈活修改表結構和數(shù)據(jù)類型,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪2023-12-12
Mysql中InnoDB與MyISAM索引差異詳解(最新整理)
InnoDB和MyISAM在索引實現(xiàn)和特性上有差異,包括聚集索引、非聚集索引、事務支持、并發(fā)控制、覆蓋索引、主鍵約束、外鍵支持和物理存儲結構等方面,InnoDB更適合事務型應用,而MyISAM適合只讀或讀多寫少的場景,本文介紹Mysql中InnoDB與MyISAM索引差異,感興趣的朋友一起看看吧2025-03-03

