$ CREATE TABLE `test` ( `data` char(64), UNIQUE KEY `key` (`data`));
$ INSERT IGNORE INTO test (data) VALUES ('a');
$ INSERT IGNORE INTO test (data) VALUES ('A');
$ SELECT * FROM test;
+------+
| data |
+------+
| a |
+------+
如何让第二个INSERT IGNORE
在表格中添加新条目?是否可以不重新定义表格?
答案 0 :(得分:1)
MySQL拒绝按原样插入重复的行。如果您希望data
列不区分大小写,则必须更改表:
ALTER TABLE `test` CHANGE `data` `data` CHAR( 64 )
CHARACTER SET latin1 COLLATE latin1_bin NULL DEFAULT NULL
答案 1 :(得分:0)
不,没有DDL就不可能。您需要更改列排序规则:
alter table test modify data char(64) collate utf8_bin;