2
범위 식별자 사용에 대한 저의 개념은 다음과 같습니다. 내 개념을 지원하는 범위 ID를 사용하는 적절한 방법은 무엇입니까? 하나의 데이터에 대한SQL 명령에서 범위 ID를 사용하는 방법?
:
Imports System.Data.SqlClient
Public Class Class1
Sub Something()
Using con As SqlConnection = New SqlConnection("ConnnectionString")
Dim tran As SqlTransaction = con.BeginTransaction("ATransaction")
Using cmd As SqlCommand = New SqlCommand("DECLARE @ScopeId bigint;INSERT INTO AuditEvents(UserId) VALUES(@UserId);SELECT @ScopeId=SCOPE_IDENTITY();")
cmd.Parameters.AddWithValue("@UserId", 1)
cmd.Transaction = tran
For rowNumber As Integer = 0 To 5 'DataGridView.Rows.Count - 1
Next
Using childCommand As SqlCommand = New SqlCommand("INSERT INTO AuditEventDetails(EventId, ResourceName, OldValue, NewValue) SELECT @EventId, @ResourceName, @OldValue, @NewValue")
childCommand.Parameters.AddWithValue("@EventId", "@ScopeId") '???????
childCommand.Parameters.AddWithValue("@ResourceName", "Something")
childCommand.Parameters.AddWithValue("@OldValue", "OldValue")
childCommand.Parameters.AddWithValue("@NewValue", "NewValue")
'............................................................................
'............................................................................
'............................................................................
'............................................................................
End Using
End Using
End Using
End Sub
End Class
여러 데이터를 들면 : 당신이 저장 발동을 사용하는 경우
Imports System.Data.SqlClient
Public Class Class1
Sub Something()
Using con As SqlConnection = New SqlConnection("ConnnectionString")
Dim tran As SqlTransaction = con.BeginTransaction("ATransaction")
Using cmd As SqlCommand = New SqlCommand("DECLARE @ScopeId bigint;INSERT INTO AuditEvents(UserId) VALUES(@UserId);SELECT @ScopeId=SCOPE_IDENTITY();")
cmd.Parameters.AddWithValue("@UserId", 1)
cmd.Transaction = tran
For rowNumber As Integer = 0 To 5 'DataGridView.Rows.Count - 1
Using childCommand As SqlCommand = New SqlCommand("INSERT INTO AuditEventDetails(EventId, ResourceName, OldValue, NewValue) SELECT @EventId, @ResourceName, @OldValue, @NewValue")
childCommand.Parameters.AddWithValue("@EventId", "@ScopeId") '???????
childCommand.Parameters.AddWithValue("@ResourceName", "Something")
childCommand.Parameters.AddWithValue("@OldValue", "OldValue")
childCommand.Parameters.AddWithValue("@NewValue", "NewValue")
'............................................................................
'............................................................................
'............................................................................
'............................................................................
Next
End Using
End Using
End Using
End Sub
End Class