如何将图像插入SQL Server表

时间:2018-08-07 19:51:26

标签: sql-server command

我要更新图像列并通过此命令插入图像。

INSERT INTO table_tbl (image)
    SELECT *
    FROM OPENROWSET(BULK N'C:Desktop\ımage\image.jpg', SINGLE_BLOB) image

我该怎么办?

3 个答案:

答案 0 :(得分:0)

这样写路径是不行的。添加反斜杠并更改“ımage”文件夹的名称(如果是错字)。试试:“ C:\ Desktop \ image \ image.jpg”

答案 1 :(得分:0)

您在路径说明中输入了错字-C:Desktop缺少反斜杠,或者SQL Server服务用户没有足够的权限来访问文件。
您可以使用services.msc管理单元查找服务帐户,并检查其是否具有足够的权限发布命令,例如icacls.exe <YOUR_FILE_OR_FOLDER>。如果没有(R)(IR)(IF)(F),则无法读取文件。
尝试授予Read服务用户访问权限。

答案 2 :(得分:0)

确保正在使用的sql server数据库上启用FILESTREAM,并且可以运行此脚本。

 INSERT INTO table_tbl Values (
   NEWID(),"New Image",
       (SELECT * FROM OPENROWSET(BULK N'C:Desktop\ımage\image.jpg', SINGLE_BLOB)
      As Fs))