gpt4 book ai didi

mysql - 将文件插入 SQL 字段并提取回文件

转载 作者:可可西里 更新时间:2023-11-01 07:50:50 26 4
gpt4 key购买 nike

我创建了一个简单的表:

SHOW DATABASES;
CREATE DATABASE observe;

USE observe;

CREATE TABLE `see_me` (id INT NOT NULL PRIMARY KEY AUTO_INCREMENT,
name VARCHAR(20),
food VARCHAR(30),
confirmed CHAR(1),
signup_date DATE,
file_contents LONGBLOB // or VARBINARY(MAX)
);

和一个名为 t.txt 的文件。如何使用 sql 命令将文件插入字段 file_contents 并将其同样提取到文件中?

插入可能是这样的

 INSERT INTO see_me(id, file_contents) 
SELECT '1', BulkColumn FROM OPENROWSET (BULK '/Users/usr_00/lab/t.txt', SINGLE_BLOB) as ...;

有人可以建议吗?

最佳答案

您可以使用 help LOAD_FILE 将文件内容插入到字段中功能。例如:

INSERT INTO see_me (file_contents)
VALUES (LOAD_FILE('/var/lib/mysql-files/myfile.txt'));

或在更新查询中

UPDATE see_me
SET file_contents = LOAD_FILE('/var/lib/mysql-files/myfile.txt');

如果您想将文件内容提取到新文件中,您可以使用 SELECT .. INTO DUMPFILE .例如:

SELECT file_contents INTO DUMPFILE '/var/lib/mysql-files/myfile.txt'
FROM see_me
WHERE id = <your_id>;

但是,正如@VonC 所说,请记住,如果 secure_file_priv 系统变量为非空,您应该使用仅位于已定义目录中的文件

关于mysql - 将文件插入 SQL 字段并提取回文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55717887/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com