をコミット私はオートナンバー値が前のTransactコミット取得に問題があります。私は2つのテーブルを持っています: "Table1"は、AutonumberとTable2の列を含んでいます。取得オートナンバー型の値は、前のTransact
これは私のコードです:
Dim req As String = "insert into Table1 values(@val1,@val2)"
Using cmd As SqlCommand = New SqlCommand(req, con)
cmd.Parameters.Add(New SqlParameter("@val1", MyVal1))
cmd.Parameters.Add(New SqlParameter("@val2", MyVal2))
cmd.Transaction = transaction
nbre = cmd.ExecuteNonQuery()
End Using
req = "insert into Table2 values(@IdTable1, @Val)"
Using cmd As SqlCommand = New SqlCommand(req, con)
cmd.Parameters.Add(New SqlParameter("@IdTable1", ?????))
cmd.Parameters.Add(New SqlParameter("@Val",MyVal))
cmd.Transaction = transaction
cmd.ExecuteNonQuery()
End Using
transaction.Commit()
con.Close()
Return nbre
私はtransaction.Commit()
前に "IdTable1" を見つけるにはどうすればよいですか?
に必要なものを同じように、私はジョエルのソリューションを実装することをお勧め([は、ExecuteScalar]を見てください知っているhttps://msdn.microsoft.com /en-us/library/system.data.sqlclient.sqlcommand.executescalar%28v=vs.110%29.aspx?f=255&MSPPError=-2147217396)。挿入した最初の行の最初の列(ID)を返します。私は答えを投稿う –
私はyhis 1試す瞬間、 –
:)非常にmutchそれはあなたの答えのメリットが投票してマークされ、私は必要なものだありがとう、私はジョエルの答えは、私は:) –