2016-09-28 5 views
1
私は次のクエリ

以下のSQL更新クエリで何が問題になっていますか?

update IGNORE cs 
    set Value = '20934820843' 
from admin.ConfigSupplemental as cs,  
    admin.Config as cc 
where cs.ConsoleConfigID = cc.ID 
    and cs.Name = 'GetTime' and cc.Ctid = 200 

を実行しようとしています

私は次の例外を取得しています:

はようConfigSupplemental近くで使用する のための右の構文をごMariaDBサーバのバージョンに対応するマニュアルを確認してくださいcs

私も以下のように試しましたが、同じエラーが表示されます。

update IGNORE cs 
    set cs.Value = '2039482094380' 
from admin.ConfigSupplemental cs 
    join admin.Config cc on 
    cc.ID = cs.ConsoleConfigID 
where cs.Name = "GetTime" 
    and cc.Ctid = 200 
+0

マニュアルを実際に確認しましたか?もしそうなら、それは何を言いましたか、あなたはそれから何を理解しましたか? – ray

答えて

1

この方法かもしれない。ここMySQLとMariaDBの正しい構文です:

update admin.ConfigSupplemental cs join 
     admin.Config cc 
     on cs.ConsoleConfigID = cc.ID 
    set Value = '20934820843' 
where cs.Name = 'GetTime' and cc.Ctid = 200; 

あなたが本当にそれを意図している場合はignoreに追加することができます。

+0

アップデート後にignore文を追加しますか?私は今電車に乗っている。そうであれば、この回答者を受け入れたいと思います。 – slopeofhope

1

あなたは間違った位置 で、更新には存在しないから、テーブル名(から)無視した後、CSの別名を持っています。

update IGNORE 
admin.ConfigSupplemental as cs   
inner join admin.Config as cc on (cs.ConsoleConfigID = cc.ID and cs.Name = 'GetTime' and cc.Ctid = 200) 
set Value = '20934820843' 
; 
関連する問題