如MySQL Reference Manual所述,
CHAR列的长度固定为创建表时声明的长度。长度可以是0到255之间的任何值。当存储CHAR值时,将使用空格将其右填充到指定长度。检索CHAR值时,除非启用了PAD_CHAR_TO_FULL_LENGTH SQL模式,否则将删除尾随空格。
如何在Connector/Net中启用PAD_CHAR_TO_FULL_LENGTH标志?(非ODBC)
如MySQL Reference Manual所述,
CHAR列的长度固定为创建表时声明的长度。长度可以是0到255之间的任何值。当存储CHAR值时,将使用空格将其右填充到指定长度。检索CHAR值时,除非启用了PAD_CHAR_TO_FULL_LENGTH SQL模式,否则将删除尾随空格。
如何在Connector/Net中启用PAD_CHAR_TO_FULL_LENGTH标志?(非ODBC)
2条答案
按热度按时间egdjgwm81#
如Server SQL Modes所述:
要在运行时更改SQL模式,请使用
SET
语句设置全局或会话sql_mode
系统变量:设置
GLOBAL
变量需要SUPER
权限,并影响从那时起连接的所有客户端的操作。设置SESSION
变量只影响当前客户端。每个客户端可以随时更改其会话sql_mode
值。因此,您需要沿着以下行执行一个普通的旧SQL命令:
eagi6jfj2#
如果您不想更改SQL模式,一个解决方法是先TRIM值,原因是CHAR类型是固定的。
示例: