ASP.NetVBWebアプリケーションを開発しています
アプリケーションにはGridView
、作成したデータブルのユーザーテーブルのレコードを表示するが含まれています。データベースはSQLサーバーデータベースです。
以下のコードは、データを1つのテーブルに挿入し、組み込み関数@@Identity
を使用して、テーブルから最後に追加されたレコードID(tt_id
)trainingTbl
を挿入し、そのレコードIDをに挿入しuserAssessmentTbl
ます。userAssessmentTbl
2番目のテーブルにIDを追加すると正常に機能します。
Protected Sub Button1_Click(ByVal sender As Object, ByVal e As System.EventArgs)
Dim lblUsr2 As Control = FindControlRecursive(MultiTabs, "txtUsr")
Dim strQuery As String
Dim cmd As SqlCommand
strQuery = "Insert into trainingTbl(s_id, t_date, EditorId, wa_id, st_id) values(@s_id , @t_date, @EditorId, @wa_id, @st_id ) Insert into userAssessmentTbl(tt_id, UserId) values(@@Identity, @UserId)"
cmd = New SqlCommand(strQuery)
cmd.Parameters.AddWithValue("@s_id", DDLCourse.Text)
cmd.Parameters.AddWithValue("@t_date", Convert.ToDateTime(txtDate.Text))
cmd.Parameters.AddWithValue("@EditorId", User.Identity.Name.ToString())
cmd.Parameters.AddWithValue("@st_id", myLblStation.Value().ToString)
cmd.Parameters.AddWithValue("@wa_id", myLblWatch.Value().ToString)
cmd.Parameters.AddWithValue("@UserId", lblUsr2.UniqueID.ToString)
InsertUpdateData(cmd)
End Sub
私が抱えている問題は、データベースにからを挿入する方法に集中しているようですuniqueidenifier
!GridView
userAssessmentTbl
GridView1
そして、どのように、ループを使用して、そのGridview( )からのUserIdレコードをuserAssessmentTbl
、からのループIDとともにテーブルに挿入できると思います@@Identity
。
挿入パラメーターのこの部分は正しくないようです。
cmd.Parameters.AddWithValue("@UserId", lblUsr2.UniqueID().ToString)
そして、私が遭遇したエラーは次のとおりです。'文字列からuniqueidentifierに変換するときに変換に失敗しました。'
私もこのように試しました:
cmd.Parameters.AddWithValue("@UserId", SqlDbType.UniqueIdentifier).Value().ToString()
そして、私はエラーに遭遇しました:'オペランドタイプの衝突:intはuniqueidentifierと互換性がありません'
qusetionは、DataTypeがUniqueidentifierであるSQL DBに文字列を挿入する方法に少し変更されましたか?
どんな助けでも本当にありがたいです。