StudentDetails.Students
はRegistrationDetails.Registration
との関係を形成するマスターテーブルです。したがって、StudentID
は前者では主キーですが、後者では外部キーです。2つのテーブルから関連するレコードの内容を削除する方法はありますか?
私は次の各コードを試しましたが、最初の2つはそれぞれ「不正確な構文 'a'」と3番目のもののエラーメッセージ "Dim trans As DbTransaction"のようにDbTransaction
また、有効なタイプでもありません。私はSQL Server 2008 Professional Editionを使用しています。あなたので
cmd = New SqlCommand("Delete from StudentDetails.Students a, RegistrationDetails.Registration b where (b.StudentId=a.StudentId) and a.StudentId='" & txtStudentID.Text & "'", cn)
:私は本当に.NETへの関連は何も知りませんが、あなたのようなものを試してみてください
1.
cmd = New SqlCommand("DELETE FROM StudentDetails.Students a, RegistrationDetails.Registration b WHERE (b.StudentId=a.StudentId) AND a.StudentId='" & txtStudentID.Text & "'", cn)
2.
cmd = New SqlCommand("DELETE FROM StudentDetails.Students a, RegistrationDetails.Registration b WHERE (b.StudentId=a.StudentId) AND a.StudentId='/" & txtStudentID.Text & "/'", cn)
学生IDに基づいて各テーブルから行を削除しようとしていますか? – Chris
はい、マスターテーブルのStudentIDに基づいて両方のテーブルからレコードを削除しようとしています。 – Akaglo
この場合は重要ではありませんが、SQLパラメータの代わりに ''&txtStudentID.Text& "'を使用すると、SQLインジェクションのために自分自身を開いていることに注意してください。 – Seph