我们如何在 sqlite 数据库(表)中插入图像?



我想它对MySQL有效,但是,我找不到有关SQLite的任何信息。

基本上,我有一个名为"客户"的表。 所以我创建了一个这样的属性:

..Image BLOB.. 之后,我的插入语句如下所示:

INSERT INTO CUSTOMER(1,LOAD_FILE(D:/Project/Images/X.jpg));

但是,LOAD_FILE标签不起作用,我不知道如何插入图像,或者我们是否可以这样做。

如果你使用的是 sqlite3 shell,相关的函数是 readfile((。

如果您从自己的程序中执行此操作,则必须将文件读入字节数组,并将其作为 blob 绑定到插入中的所需列。确切的详细信息因语言和 sqlite 绑定而异,但您不必将其转换为 blob 文本字符串并将其直接嵌入到语句中。

您可以将图像存储为BLOB,但您必须使用类似以下内容将其作为一系列字节插入:-

INSERT INTO CUSTOMER (image_column, other_column) VALUES(x'0001020304........','data for the first other column');

因此,您需要将文件转换为十六进制字符串才能保存。

但是,实际上并不建议存储图像,而是存储图像的路径,然后在要显示/使用图像时检索文件。

话虽如此,SQLite对于较小的图像(例如100K(,实际上可以比文件系统快35%的效率。

您必须使用 cmd 命令行 (windows( 插入附件。sqllitespy (版本 1.9.13( 不支持来自程序命令行的 de 命令。

您应该首先使用CMD访问数据库,然后再访问数据库;

更新(您的表(集(列(= 读取文件("存储文件的目录"||数字||'.jpg(;

最新更新