質問テーブルと関係テーブルから、クイズIDに一致するすべてのレコードを削除しようとしています。クエリはselectステートメントに対して機能しますが、同じステートメントでは削除できません。関連テーブルのSQL削除
@quizId
は私のストアドプロシージャに渡すクイズID値です。誰もが1つのステートメントを使用して両方のテーブルから削除する方法を知っていますか?出来ますか?あなたはそれがすべてを行う必要がPKでテーブルから削除され、すべてのFKテーブルが自動的に
削除され、自動的に起こるカスケード削除を有効にする必要があり
DELETE tGeoQuestions as a, tGeoQuizToQuestion as b WHERE b.quizId = @quizId AND a.id = b.questionid
次のようにTomが警告しているように、カスケードは慎重に使用してください。突然、データが見つからないため –
...トランザクションで... – gbn
PKをお持ちの場合は削除し、FKも削除しますどのようにPKデータがそこにない場合は、データが欠落しています..どこにFKが指していますか? – SQLMenace