可能性の重複:サブクエリが悪かったし、結果はすべてのあった場所、私は今日の問題に出会っ
sql server 2008 management studio not checking the syntax of my queryT-SQLは、テーブルからすべての行を削除します
親テーブルの行が削除されました。
TableA
ID,
Text,
GUID
TableB
ID,
TableAID,
Text
delete from TableB
where id in (
select TableAID
from TableA
where GUID = 'fdjkhflafdhf'
)
あなたはそれ自体でサブクエリを実行した場合、あなたは完全なクエリを実行する場合は、列(TableAID)は表Aに存在しないため、エラーを取得する - それがエラーなしで、テーブルBからすべてのレコードを削除します。
私も0記録(予想)
delete from TableB where id in (null)
delete from TableB where id in (select null)
を削除し、次のクエリをしようとしたクエリが不正な形式であるとき、これが発生している理由を誰かが私に説明できますか?なぜそれは真実と評価されるようですか?
注:これはTableAID
はTableA
に存在しないため、クエリがTableB
から列を使用しているSQL Server 2008 R2の
良い質問を、私も前にこの全体を実行しています。 – RedFilter
注意: 'TableB'は実際に' somebadcolumn'という列を持っていると仮定していますか?もしそうなら、あなたはその質問にそれを見逃しました。 –
列が存在しません。私は質問を更新してより明確にしています。 – tsells