sqlTransaction完成问题-dataype从图像更改为varbi [英] sqlTransaction Complete Problem-dataype change from image to varbi
本文介绍了sqlTransaction完成问题-dataype从图像更改为varbi的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
这是在来自C#1.1
代码的ado.net交易中的C#循环中调用的。它用于将大文件数据写入
块中的SQL Server数据库,而不是一次性写入。
我有下面的存储过程,工作到图像数据类型是
更改为varbinary(最大)。
现在我收到以下错误:
这个SqlTransaction已经完成;它已不再可用
存储过程在这里(注意这是与
dataype设置为image的版本。如果我更改数据类型到varbinary(max),和
显然也改变了表中的字段,代码失败了上面给出的
错误。
>
ALTER PROCEDURE [dbo]。[FileUploadData_Upd]
@FileID Uniqueidentifier,
- @ data varbinary(max),
@data image,
@append bit
AS
设置NOCOUNT ON
IF @ append = 0
UPDATE dbo.FileUpload
SET Data = @data
WHERE FileId = @FileID;
如果@append = 1
UPDATE dbo.FileUpload
SET Data.write(@ data,NULL,0)
任何帮助将不胜感激
-
问候,
Phil Johnson(MCSD For .NET)
PJ软件开发
www.pjsoftwaredevelopment.com
推荐答案
我应该添加,我已经修改了C#中参数的数据类型是
varBinary:
SqlParameter paramData = cm.Parameters.Add(" @ data",
System.Data。 SqlDbType.VarBinary);
交易的隔离级别是ReadCommitted。
-
问候,
Phillip Johnson(MCSD For .NET)
PJ软件开发
www.pjsoftwaredevelopment.com
" Phil Johnson"写道:
I should add, I have modified the datatype of the parameter in C# to be
varBinary:
SqlParameter paramData = cm.Parameters.Add("@data",
System.Data.SqlDbType.VarBinary);
And the isolation level of the transaction is ReadCommitted.
--
Regards,
Phillip Johnson (MCSD For .NET)
PJ Software Development
www.pjsoftwaredevelopment.com
"Phil Johnson" wrote:
这是在来自C#1.1的ado.net交易中的C#循环中调用的br />
代码。它用于将大文件数据写入
块中的SQL Server数据库,而不是一次性写入。
我有下面的存储过程,工作到图像数据类型是
更改为varbinary(最大)。
现在我收到以下错误:
这个SqlTransaction已经完成;它已不再可用
存储过程在这里(注意这是与
dataype设置为image的版本。如果我更改数据类型到varbinary(max),和
显然也改变了表中的字段,代码失败了上面给出的
错误。
>
ALTER PROCEDURE [dbo]。[FileUploadData_Upd]
@FileID Uniqueidentifier,
- @ data varbinary(max),
@data image,
@append bit
AS
设置NOCOUNT ON
IF @ append = 0
UPDATE dbo.FileUpload
SET Data = @data
WHERE FileId = @FileID;
如果@append = 1
UPDATE dbo.FileUpload
SET Data.write(@ data,NULL,0)
Any帮助将不胜感激
-
问候,
Phil Johnson(MCSD For .NET)
PJ软件开发
www.pjsoftwaredevelopment.com
你能发布C#循环代码吗?
Marc
Can you post the C# loop code at all?
Marc
糟糕;忘了扔!非常重要......; - p
catch {
tran.Rollback();
throw;
}
Marc
Oops; forgot the throw! Very important... ;-p
catch {
tran.Rollback();
throw;
}
Marc
这篇关于sqlTransaction完成问题-dataype从图像更改为varbi的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文