Mysql 键'的重复输入;主要'。忽略字符串的空格
字符串“viok”和“viok”不同。如何添加带空格的字符串?Q:如何添加带空格的字符串 A:这是不可能的 就MySQL如何将它们存储为索引项而言,文本值“viok”和“viok”不是唯一的。这是: 如果对文本列编制了索引,索引项比较将在末尾填充空格。这意味着,如果索引需要唯一的值,则对于仅在尾随空格数上不同的值,将发生重复键错误。例如,如果表包含“a”,则尝试存储“a”会导致重复键错误。对于BLOB列,情况并非如此Mysql 键'的重复输入;主要'。忽略字符串的空格,mysql,Mysql,字符串“viok”和“viok”不同。如何添加带空格的字符串?Q:如何添加带空格的字符串 A:这是不可能的 就MySQL如何将它们存储为索引项而言,文本值“viok”和“viok”不是唯一的。这是: 如果对文本列编制了索引,索引项比较将在末尾填充空格。这意味着,如果索引需要唯一的值,则对于仅在尾随空格数上不同的值,将发生重复键错误。例如,如果表包含“a”,则尝试存储“a”会导致重复键错误。对于BLOB列,情况并非如此 MySQL在字符串比较中忽略尾随空格。一种方法是添加一列来存储文本的尾随空格数
MySQL在字符串比较中忽略尾随空格。一种方法是添加一列来存储文本的尾随空格数
一种方法是将其存储为varchar,这允许使用尾随空格 可能重复的我知道!!!您不了解问题所在问题是您不应该将
文本
用作唯一/主键。答案是这样的。
mysql> CREATE TABLE primary2(boom text,id int,PRIMARY KEY(boom(5)) );
Query OK, 0 rows affected (0.04 sec)
mysql> INSERT INTO primary2 VALUES('viok',1);
Query OK, 1 row affected (0.00 sec)
mysql> INSERT INTO primary2 VALUES('viok',1);
ERROR 1062 (23000): Duplicate entry 'viok' for key 'PRIMARY'
mysql> INSERT INTO primary2 VALUES('viok ',1);
ERROR 1062 (23000): Duplicate entry 'viok ' for key 'PRIMARY'