使用load data infile将二进制数据加载到mysql

使用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

我想将一个二进制文件加载到mysql数据库中,但我非常困惑,因为加载数据通常是作为字符串完成的

例如,一个14字节的文件看起来像(十六进制)

我想把它加载到一个表中,如下所示

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';