【问题标题】:Set PAD_CHAR_TO_FULL_LENGTH on MySql Connector/Net在 MySql 连接器/网络上设置 PAD_CHAR_TO_FULL_LENGTH
【发布时间】:2015-11-07 13:16:01
【问题描述】:
正如MySQL Reference Manual 所说,
CHAR 列的长度固定为您声明的长度
创建表时。长度可以是 0 到 255 之间的任何值。
当 CHAR 值被存储时,它们在右边用空格填充到
规定的长度。检索 CHAR 值时,尾随空格
除非启用 PAD_CHAR_TO_FULL_LENGTH SQL 模式,否则将被删除。
如何在连接器/网络中启用 PAD_CHAR_TO_FULL_LENGTH 标志? (不是 ODBC)
【问题讨论】:
标签:
c#
mysql
connector-net
【解决方案1】:
如Server SQL Modes 中所述:
要在运行时更改 SQL 模式,请使用 SET 语句设置全局或会话 sql_mode 系统变量:
SET GLOBAL sql_mode = 'modes';
SET SESSION sql_mode = 'modes';
设置GLOBAL 变量需要SUPER 权限并影响从那时起连接的所有客户端的操作。设置SESSION 变量仅影响当前客户端。每个客户端都可以随时更改其会话sql_mode 值。
因此,您希望按照以下几行执行普通的旧 SQL 命令:
SET SESSION sql_mode = 'PAD_CHAR_TO_FULL_LENGTH';