首頁  >  文章  >  資料庫  >  為什麼更改 MySQL 列資料類型後仍然出現「資料因列被截斷」錯誤?

為什麼更改 MySQL 列資料類型後仍然出現「資料因列被截斷」錯誤?

Patricia Arquette
Patricia Arquette原創
2024-10-31 12:34:01685瀏覽

Why Am I Still Getting

修改MySQL 列資料類型後解決「Data Truncated for Column」錯誤

您已修改MySQL 列的資料類型以適應較長的字串,但在手動更新資料時,您會遇到「資料因列被截斷」錯誤。此錯誤表示您嘗試插入的資料超出了指定的列長度。

診斷:

問題在於分配給已修改列的當前長度。儘管更改資料類型以支援更長的字串,但列的長度保持不變,從而導致資料截斷錯誤。

解決方案:

要解決此問題,請按照以下步驟操作步驟:

  1. 檢查列長度:使用以下查詢來確定受影響列的當前長度:

    SELECT column_name, DATA_TYPE, CHARACTER_MAXIMUM_LENGTH
    FROM information_schema.COLUMNS
    WHERE table_name = 'calls'
    AND column_name = 'incoming_Cid';
  2. 更改列長度:如果列長度不足,請將其增加到所需的最大長度。例如,要將傳入_Cid 的長度設為34 個字符,請執行以下查詢:

    ALTER TABLE calls CHANGE incoming_Cid incoming_Cid CHAR(34);
  3. 驗證更改: 更新列長度後,透過以下方式驗證změnu重新查詢information_schema.COLUMNS 表。

調整列長度後,應該能夠插入所需的數據,而不會遇到截斷錯誤。

以上是為什麼更改 MySQL 列資料類型後仍然出現「資料因列被截斷」錯誤?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

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