本周在windows10机器上安装了mysql-installer-community-8.0.11.0.msi,我一直在加载西班牙语名称。
与…吵架 Reynaldo Cantú
加载程序消息失败:
第4行出现错误1300(hy000):utf8mb4字符串无效:“reynaldo cant”
倒着的问号也一样。
如果我去掉那一行,所有其他带有重音元音的名字,比如 Chacón
,从重音元音开始截断。
所有关于这个主题的网络搜索都说,使用utf8mb4。所以我从没有指定字符集,到在我能想到的任何地方都添加了utf8mb4。但结果是一样的。
我的数据库是 utf8mb4
. 如果存在,我的创建表是drop table;
CREATE TABLE T_JackArtist( -- Table of people recorded
RID INT PRIMARY KEY, -- T_JackArtist unique row ID
Name VARCHAR(64) NOT NULL , -- Name of person recorded
Note VARCHAR(256) NOT NULL, -- Note
AKA1 VARCHAR(64) NOT NULL, -- Name of person recorded
Track_Changed DATETIME NOT NULL DEFAULT Current_Timestamp,
Track_Userid VARCHAR(50) NOT NULL DEFAULT 'Init'
)
DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
我的mysql.exe加载命令是
"C:\Program Files\MySQL\MySQL Server 8.0\bin\Mysql.exe" Jack -h xxx8 -u xxx --password=xxx --batch --raw --local-infile --default-character-set=utf8 < T_JackArtist.cmd
使用t\u jackartist.cmd
USE Jack;
SET NAMES 'utf8mb4';
SET foreign_key_checks = 0;
LOAD DATA LOCAL INFILE 'C:\\Dan\\Jack\\MySql\\Schema\\import\\T_JackArtist.txt' INTO TABLE T_JackArtist IGNORE 1 LINES ;
我哪里出错了?
2条答案
按热度按时间8oomwypt1#
抱歉来晚了。出于这个原因和其他原因,我决定留在mssqlserver/
关上它!
hzbexzde2#
在
LOAD DATA
声明,包括CHARACTER SET utf8mb4
.确保文件中的字节是utf8,而不是latin1:
ú
utf8/utf8mb4中的十六进制:C3FA
ú
拉丁文十六进制1:FA
另请参阅utf-8字符故障中的“截断”;我看到的不是我储存的