编辑:我的错误,读错了类型的列,我插入的是LONGTEXT,而不是varchar(190)我正在使用的应用程序将其大部分信息存储在MySQL数据库(MySQL server 5.7)中。我正在查看的一个特定值由GUI强制限制为255个字符,但是,当我查看存储该值的表中的列时,它被设置为varchar(190)。我确认我可以在GUI中输入255个字符的值,并且它们不会像我预期的那样被截断。
varchar(190)列如何存储>190个字符?这样做会有什么后果吗?
我阅读了11.4.1 The CHAR and VARCHAR Types,它指出任何超过限制的内容都应该被截断。
发布于 2019-07-03 10:31:35
答案是我不能。误读了列类型,因为当应用程序在PostgreSQL中构建模式时,该列是varchar(255)。这是MySQL中的长文本*,这解释了为什么我能够超过190个字符。我尝试将230个字符的测试字符串插入varchar(190)列,不出所料,它抛出了一个错误。
需要更多的咖啡。
*不知道为什么是长文本,因为应用程序GUI将输入限制为255个字符,但我需要询问构建它的人。
https://stackoverflow.com/questions/56861648
复制相似问题