首页 > 解决方案 > SQL:字符串'后的非右引号,Single_Blob) ImageData)

问题描述

我收到此错误

字符串'后没有右引号,Single_Blob) Image Data)"

当我在 SQL Server Management Studio 中运行以下脚本时。

SP,SP_Document_Upload,可以很好地上传文档。当文档名称中包含撇号时,我突然收到此错误。示例:“这是 Martins 的出生证明.doc”。我正在运行的查询是:

EXEC SP_Document_Upload
    @ID = 1, --`Id Number of the document`
    @Name = 'Martins'' Birth Certificate.doc', 
    @Path = 'C:\temp\Martins'' Birth Certificate.doc' 
GO

顺便说一句,我可以毫无问题地运行 select 语句:

Select * 
From documents
Where Name = 'Martins'' Birth Certificate.doc'

SP_Document_Upload 中的动态 SQL 脚本如下所示:

更新文档 SET Name=@Name WHERE ID = @ID

DECLARE @sql_string nvarchar(max) = N'UPDATE Documents SET FileData = (SELECT Bulkcolumn FROM Openrowset(Bulk ''' + @Path + ''', Single_Blob) Imagedata) WHERE DocumentID_PK = ' + CAST(@ID AS NVARCHAR(max ));

谢谢,

标签: sql-server

解决方案


推荐阅读