Ik heb deze volgende functie van het internet af gehaald om met transactions te leren werken:
Ik krijg dan een fout: "Het ROLLBACK TRANSACTION-verzoek heeft geen corresponderende BEGIN TRANSACTION" Deze begin transaction is er echter wel degelijk zoals mag blijken.
Ik heb het nergens op internet kunnen vinden, ook niet op GoT; maar is het misschien niet mogelijk een rollback te doen op een create statement? Dat kan toch wel?
Owja, beide statements leveren (expres) een fout op...
code:
Deze gaat zoals hij hier staat goed. Zet ik echter achter CommandText sql1 neer; oftwel ik voer een create uit ipv een insert dat gaat het mis.1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
| Function MaakSP() As Integer
Dim dbConnection As New SqlConnection(ConfigurationManager.GetSection("QCAppSettings")("QCconnString")) 'Wordt uit web.config gehaald
dbConnection.Open()
'Start the transaction
Dim myTrans As SqlTransaction = dbConnection.BeginTransaction()
Try
'Create the SqlCommand object, specifying the transaction through
'the constructor (along with the SQL string and SqlConnection)
'Alternatively, could set properties of myCommand
'to specify the Connection, CommandText, and Transaction...
Dim myCommand As New SqlCommand
myCommand.Connection = dbConnection
myCommand.Transaction = myTrans
Dim sql1 As String = _
"CREATE TABLE [GebruikersGroep] ([GebruikersgroepID] [int] IDENTITY (1, 1) NOT NULL)"
Dim sql2 As String = _
"INSERT INTO Test(test) VALUES('kan niet schrijven')"
myCommand.CommandText = sql2
myCommand.ExecuteNonQuery()
'If we reach here, all command succeeded, so commit the transaction
myTrans.Commit()
Catch ex As Exception
'Something went wrong, so rollback the transaction
Response.Write(ex)
myTrans.Rollback()
Finally
dbConnection.Close() 'Finally, close the connection
End Try
End Function |
Ik krijg dan een fout: "Het ROLLBACK TRANSACTION-verzoek heeft geen corresponderende BEGIN TRANSACTION" Deze begin transaction is er echter wel degelijk zoals mag blijken.
Ik heb het nergens op internet kunnen vinden, ook niet op GoT; maar is het misschien niet mogelijk een rollback te doen op een create statement? Dat kan toch wel?
Owja, beide statements leveren (expres) een fout op...
[ Voor 5% gewijzigd door Sensei_D op 18-08-2005 11:07 . Reden: extra opmerking ]