首頁 >資料庫 >mysql教程 >如何解決MySQL錯誤1406:列資料太長?

如何解決MySQL錯誤1406:列資料太長?

Susan Sarandon
Susan Sarandon原創
2025-01-03 09:51:39378瀏覽

How to Resolve MySQL Error 1406: Data Too Long for Column?

錯誤代碼:1406 - 管理MySQL 中過長的資料

嘗試將資料插入MySQL 表時,使用者可能會遇到錯誤代碼1406:資料對於列來說太長。當資料超過為目標列的資料類型指定的長度時,會發生此錯誤。

錯誤原因:

在提供的範例中,VARCHAR 欄位 TESTcol 有長度為 45 個字元。但是,嘗試插入長度為 47 個字元的資料會觸發錯誤。預設情況下,MySQL 將截斷任何超過指定列寬的值。

解決方案:

要繞過此錯誤,使用者可以考慮兩個選項:

  1. 調整列長度:增加目標的長度列以容納較長的資料。這可以透過ALTER TABLE 語句來實現,例如:

    ALTER TABLE TEST MODIFY COLUMN TESTcol VARCHAR(60);
  2. 停用嚴格模式: 在MySQL 中,嚴格模式控制執行的資料驗證的層級在插入操作期間。停用嚴格模式允許插入超過列長度的值。但是,此選項可能會損害資料完整性,因此不建議在大多數情況下使用。

    SET @@global.sql_mode= '';

注意:應謹慎使用禁用嚴格模式,並且僅在以下情況下使用:不關心資料完整性的特定情況。

以上是如何解決MySQL錯誤1406:列資料太長?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn