我正在将excel表(csv)迁移到mysql,但是当我执行插入时,某些字段最后会以空格结尾,但由于某种原因我无法将它们删除。所以我假设最后有一个奇怪的角色,因为即便如此:
UPDATE FOO set FIELD2 = TRIM(Replace(Replace(Replace(FIELD2,'\t',''),'\n',''),'\r',''));
完全摆脱它,我最后还有一个空格,我不知道如何摆脱它。我有超过2000个条目,因此手动操作不是一个选项。我正在使用Laravel和修订包,它不起作用,因为它认为最后的那些空间是变化,它创建了一堆重复。谢谢你的帮助。
答案 0 :(得分:0)
如果您认为原始csv中有奇怪的字符,您可以在能够进行正则表达式替换的文本处理器中打开它,然后用任何内容替换所有非ascii字符。
你的正则表达式看起来像这样:
[^\u0000-\u007F]+
然后在删除任何可能的奇怪字符后,将数据重新导入数据库。
不幸的是,我不认为在sql中可以使用正则表达式替换,因此您需要重新导入。