[英]Mysql 1406 Data too long for column
我有一個包含超過 600 個字符的字符串,我想將它插入到VARCHAR (255)
列中
我在兩個不同的數據庫上進行了測試:
mysql 5.7.31-34-log
數據庫,我遇到了這個異常:["@@sql_mode"]=> 字符串(40) "STRICT_ALL_TABLES,NO_ENGINE_SUBSTITUTION"
mysql 5.7.19
數據庫,該字符串已很好地注冊到我的數據庫中,但帶有警告消息: Level Code Message["@@sql_mode"]=> 字符串(0) ""
如果有人可以向我解釋禁用嚴格模式是一個好習慣,我將不勝感激,如果超過,截斷是否會刪除字符串的一部分?
您不能在 varchar(255) 中存儲 600 個字符,因為它只允許 255 個字符。取決於您的配置數據將在 255 個字符后被拒絕或截斷。 您使用的 MySql 版本允許 varchar 數據類型超過 255。 請更改列以延長長度。 例如,您可以使用 varchar(600)。
您可以將 600 長的字符串插入到 255 長的列中。 通過 TEXT 更改您的 VARCHAR(255) 就可以了。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.