将文件内容插入 MySQL 表的列

2022-01-09 00:00:00 file insert mysql

我知道有 LOAD DATA INFILE 语句,它允许我将结构化数据插入到表中.

I know there's the LOAD DATA INFILE statement, which allows me to INSERT structured data into a table.

我很好奇的是,是否可以将文件的内容插入单列.那么,是这样的吗:

What I'm curious about, is whether it is possible to INSERT contents of a file into single column. So, is something like this:

INSERT INTO my_table (stamp, what) VALUES (NOW(), LOAD DATA INFILE 'my_file');

可能吗?

推荐答案

是的,这是可能的.您可以使用 LOAD_FILE() 功能:

Yes it's possible. You can use the LOAD_FILE() function:

CREATE TABLE my_table (stamp datetime, what text);

INSERT INTO my_table (stamp, what) VALUES (NOW(), LOAD_FILE('/tmp/my_file.txt'));

您必须确保 MySQL 可以读取该文件,并且您的 MySQL 用户具有 FILE 权限.这与 LOAD DATA INFILE.

You'll have to make sure that the file is readable by MySQL, and that your MySQL user has the FILE privilege. This is the same privilege required for LOAD DATA INFILE.

相关文章