【问题标题】:How to Add White Space at the end of word while Inserting Data into MySQL? [duplicate]将数据插入 MySQL 时如何在单词末尾添加空格? [复制]
【发布时间】:2020-04-17 15:05:04
【问题描述】:
create table Test(aa varchar(20),bb varchar(20),cc varchar(20),primary key (aa,bb));

 insert into Test values('abc','ab','a');

 insert into Test values('abc  ','ab','a');

 insert into Test values('abc','ab  ','a');

 insert into Test Values('abc  ','ab  ','a');

在这里,如果我正在执行此语句,我会在第三行出现错误

错误代码:1062。重复条目 'abc -ab' 键 'PRIMARY' 0.250 秒。

但我想在单词末尾插入空格。如何在 MySQL 中执行此操作。

有关更多信息,请单击此处 dbfiddle.uk: https://dbfiddle.uk/?rdbms=mysql_5.7&fiddle=43da399bc1254611553172544abae8f8

【问题讨论】:

    标签: mysql database database-design mysql-workbench


    【解决方案1】:

    这是a documented behavior

    如果 TEXT 列被索引,则索引条目比较在末尾用空格填充。这意味着,如果索引需要唯一值,则仅在尾随空格数不同的值将发生重复键错误。例如,如果表包含“a”,则尝试存储“a”会导致重复键错误。

    所以你不能这样做。考虑使用空格以外的其他东西来消除您的价值观的歧义。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2022-01-25
      • 2019-04-12
      • 2011-09-08
      • 2022-06-20
      • 1970-01-01
      相关资源
      最近更新 更多