使用load data infile将二进制数据加载到mysql
我想将一个二进制文件加载到mysql数据库中,但我非常困惑,因为加载数据通常是作为字符串完成的 例如,一个14字节的文件看起来像(十六进制) 我想把它加载到一个表中,如下所示使用load data infile将二进制数据加载到mysql,mysql,Mysql,我想将一个二进制文件加载到mysql数据库中,但我非常困惑,因为加载数据通常是作为字符串完成的 例如,一个14字节的文件看起来像(十六进制) 我想把它加载到一个表中,如下所示 CREATE TABLE IF NOT EXISTS testtable ( id smallint unsigned primary key, data VARCHAR(4), ); 但是当我使用下面的查询进行加载时 LOAD DATA INFILE '/path/to/file' into table
CREATE TABLE IF NOT EXISTS testtable
(
id smallint unsigned primary key,
data VARCHAR(4),
);
但是当我使用下面的查询进行加载时
LOAD DATA INFILE '/path/to/file' into table testtable CHARACTER SET UTF8 FIELDS TERMINATED BY ',' LINES TERMINATED BY '\n';
我得到这个错误:
错误1062(23000):键“PRIMARY”的重复条目“0”
我的问题:有没有解决方案将前两个字节编码为smallint
,并将它们存储在id
列中
注意:0x2C是查询中指定的,
,0x0A是\n
非常感谢
LOAD DATA INFILE '/path/to/file' into table testtable CHARACTER SET UTF8 FIELDS TERMINATED BY ',' LINES TERMINATED BY '\n';