默认情况下,MySQL 在从字符串中删除空格后返回 char 字段。然而,这不是 ANSII 标准所期望的行为。另一方面,SQL Server 按原样返回空格(正如标准所期望的那样)。
在 MySQL 中,要更改它,我们可以通过以下方式之一设置变量 sql_mode 以包含 PAD_CHAR_TO_FULL_LENGTH:
仅适用于当前会话:
SET SESSION sql_mode = 'PAD_CHAR_TO_FULL_LENGTH'
或全球:
SET SESSION sql_mode = 'PAD_CHAR_TO_FULL_LENGTH'
问题是:SQL Server 是否有任何等效的设置来改变行为,所以它会正确修剪任何字符类型的空格(尽管它不是 ANSII 标准)——所以它的行为就像 MySQL?