MySQL 插入行為:截斷與錯誤
MySQL 插入行為:截斷與錯誤
MySQL 在嘗試插入超出列長度限制的資料時表現出不同的行為:截斷或錯誤。在這種情況下,我們的目標是修改 MySQL 實例以截斷資料而不是引發錯誤。
解決方案:停用 STRICT_TRANS_TABLES 和 STRICT_ALL_TABLES
預設情況下,MySQL 強制執行嚴格的模式,其中包含設定 STRICT_TRANS_TABLES 和 STRICT_ALL_TABLES。這些設定禁止在 INSERT 或 UPDATE 等資料變更作業中出現無效或缺失值。SET SESSION sql_mode=NO_STRICT_TRANS_TABLES,NO_STRICT_ALL_TABLES;
SET SESSION sql_mode=NO_STRICT_TRANS_TABLES,NO_STRICT_ALL_TABLES;
說明:
說明:
透過停用這些設定,我們停用我們對刪除值或缺失值的限制。這允許 MySQL 以靜默方式截斷超過列長度限制的數據,遵循截斷的預設行為。
參考:
MySQL Server SQL 模式:https:// /dev.mysql.com/doc/refman/8.0/en/sql-mode.html免責聲明: 提供的所有資源部分來自互聯網,如果有侵犯您的版權或其他權益,請說明詳細緣由並提供版權或權益證明然後發到郵箱:[email protected] 我們會在第一時間內為您處理。
Copyright© 2022 湘ICP备2022001581号-3