我后台用的是oracle数据库,我现在想进行如下操作:
先删除表中数据
再插入另外一些数据
如果插入不成功的话,则恢复到删除前。
请问可以用rollback 实现吗?如果可以的话,怎么用,麻烦详细一些告诉我!
我的语句:
mysql="delete from table1"
Rs.open mysql,con,adopendynammic,adlockoptimistic
mysql="insert into table1 values('2','ewr')//添加不成功则不进行上一步的delete操作
Rs1.open mysql,con,adopendynammic,adlockoptimistic
先删除表中数据
再插入另外一些数据
如果插入不成功的话,则恢复到删除前。
请问可以用rollback 实现吗?如果可以的话,怎么用,麻烦详细一些告诉我!
我的语句:
mysql="delete from table1"
Rs.open mysql,con,adopendynammic,adlockoptimistic
mysql="insert into table1 values('2','ewr')//添加不成功则不进行上一步的delete操作
Rs1.open mysql,con,adopendynammic,adlockoptimistic
adocon.BeginTrans
mysql="delete from table1"
Rs.open mysql,con,adopendynammic,adlockoptimistic
mysql="insert into table1 values('2','ewr')
adocon.CommitTrans
Exit Sub
err1:
adocon.RollbackTrans
Dim mysql As String
Dim rs As New ADODB.Recordset
Dim rs1 As New ADODB.Recordset
Dim con As New ADODB.Connection
con = "连接字符串(自己填)"con.BeginTrans
mysql = "delete from table1"
rs.open mysql, con, adopendynammic, adlockoptimistic
mysql = "insert into table1 values('2','ewr')"
rs1.open mysql, con, adopendynammic, adlockoptimistic
con.CommitTransExit Sub
ErrHandle:
con.RollbackTrans
If Err.Number <> "" Then
Err.Raise Err.Number, Err.Source, Err.Description
End If