2012-02-24 6 views
2
WHILE @@ROWCOUNT <> 0 
BEGIN 
    CHECKPOINT; 
    DELETE TOP (300000) 
     FROM [dbo].[Event] AS E 
    INNER JOIN #tempEvents AS TE 
     ON E.[EventID] = TE.[EventID] 
END 

、私が取得: Incorrect syntax near the keyword 'AS'.構文に何が問題なのですか?手始めに

だから、私はこれを削除し、完全なテーブル名の別名に置き換え、私を与える:Incorrect syntax near the keyword 'INNER'.

が、私はこのquestionを見つけたところであるI INNER JOINについて知りましたが、SQL Serverはこれを正しく解析していません。何か案は?

答えて

3

はこれを試してみてください。

WHILE @@ROWCOUNT <> 0 
BEGIN 
    CHECKPOINT; 
    DELETE TOP (300000) E 
     FROM [dbo].[Event] AS E 
    INNER JOIN #tempEvents AS TE 
     ON E.[EventID] = TE.[EventID] 
END 

あなたはトップ文の後にテーブル名/エイリアスを逃しました。

+0

優秀 - ありがとう! –

関連する問題