14 个解决方案
#1
transaction在ado.net好像还是和connection关联的,但是只能和一个sqlcommand绑定,一个connection只能有一个事务,recordset在ado.net里已经没有这个概念了,ado.net里一种是把数据一次性取出放到dataset,datatable等容器里,然后就和数据库断开连接,一种就是datareader和数据库保持连接,每次读出一条记录,前者牺牲本地内存,后者牺牲数据库资源
#2
那现在写一个事务得非要和sqlcommand写在一起了?能不能不和写在一起呀!
#3
你想和什么写在一起呢?dataset等等都是用command对象和数据库交互的
#4
transaction在ado.net是和connection关联的,只能和一个sqlcommand绑定,一个connection只能有一个事务
recordset在ado.net里相当于dataadapter+dataset
recordset在ado.net里相当于dataadapter+dataset
#5
那现在写一个事务得非要和sqlcommand写在一起了?能不能不和写在一起呀?
不能!
不能!
#6
谢谢各位!
#7
可以使用存储过程
将事务写在存储过程中
CREATE PROCEDURE aa
as
declare @ReturnError int
begin transaction
update table .........
select @ReturnError=@@error
if @ReturnError!=0
begin
rollback transaction
return (@ReturnError)
end
commit transaction
return(0)
将事务写在存储过程中
CREATE PROCEDURE aa
as
declare @ReturnError int
begin transaction
update table .........
select @ReturnError=@@error
if @ReturnError!=0
begin
rollback transaction
return (@ReturnError)
end
commit transaction
return(0)
#8
dataset等等都是用command对象和数据库交互的.
在ado里,recordset可以通过connection执行就可以,没想到ado.net还要通过sqlcommand来连呀!
在ado里,recordset可以通过connection执行就可以,没想到ado.net还要通过sqlcommand来连呀!
#9
我想要的是通过ado.net来进行事务处理。在数据库里我会用事务处理。
#10
存储过程不能保证客户端到服务器的数据的完整性,
#11
那事务写在哪个里面最好,com+ ,ado.net ,数据库?
#12
Ado也有command对象呀:
set rs as Adodb.recordset
cmd..commandtext="Select..."
cmd.Activeconnection=cn
rs=cmd.execute()
set rs as Adodb.recordset
cmd..commandtext="Select..."
cmd.Activeconnection=cn
rs=cmd.execute()
#13
数据库里的事务是最安全的
#14
看来还是要多看一看ado.net方面的东东了.谢谢各位的解释!
#1
transaction在ado.net好像还是和connection关联的,但是只能和一个sqlcommand绑定,一个connection只能有一个事务,recordset在ado.net里已经没有这个概念了,ado.net里一种是把数据一次性取出放到dataset,datatable等容器里,然后就和数据库断开连接,一种就是datareader和数据库保持连接,每次读出一条记录,前者牺牲本地内存,后者牺牲数据库资源
#2
那现在写一个事务得非要和sqlcommand写在一起了?能不能不和写在一起呀!
#3
你想和什么写在一起呢?dataset等等都是用command对象和数据库交互的
#4
transaction在ado.net是和connection关联的,只能和一个sqlcommand绑定,一个connection只能有一个事务
recordset在ado.net里相当于dataadapter+dataset
recordset在ado.net里相当于dataadapter+dataset
#5
那现在写一个事务得非要和sqlcommand写在一起了?能不能不和写在一起呀?
不能!
不能!
#6
谢谢各位!
#7
可以使用存储过程
将事务写在存储过程中
CREATE PROCEDURE aa
as
declare @ReturnError int
begin transaction
update table .........
select @ReturnError=@@error
if @ReturnError!=0
begin
rollback transaction
return (@ReturnError)
end
commit transaction
return(0)
将事务写在存储过程中
CREATE PROCEDURE aa
as
declare @ReturnError int
begin transaction
update table .........
select @ReturnError=@@error
if @ReturnError!=0
begin
rollback transaction
return (@ReturnError)
end
commit transaction
return(0)
#8
dataset等等都是用command对象和数据库交互的.
在ado里,recordset可以通过connection执行就可以,没想到ado.net还要通过sqlcommand来连呀!
在ado里,recordset可以通过connection执行就可以,没想到ado.net还要通过sqlcommand来连呀!
#9
我想要的是通过ado.net来进行事务处理。在数据库里我会用事务处理。
#10
存储过程不能保证客户端到服务器的数据的完整性,
#11
那事务写在哪个里面最好,com+ ,ado.net ,数据库?
#12
Ado也有command对象呀:
set rs as Adodb.recordset
cmd..commandtext="Select..."
cmd.Activeconnection=cn
rs=cmd.execute()
set rs as Adodb.recordset
cmd..commandtext="Select..."
cmd.Activeconnection=cn
rs=cmd.execute()
#13
数据库里的事务是最安全的
#14
看来还是要多看一看ado.net方面的东东了.谢谢各位的解释!