私は一種の翻訳データベースを持っています。言語 A (langA) の単語とその ID を含む 1 つのテーブル、言語 B (langB) の単語と ID を含むテーブル、および ID-idA-idB のように両方の言語 (翻訳) の単語を接続するテーブル。
翻訳 ID で翻訳を表示するには、結合テーブルを使用します。
SELECT *
FROM langA, langB, translation
WHERE translation.id = 5
AND langA.id = translation.idA
AND langB.id = translation.idB
最後の 2 行は、1 つの単語に複数の翻訳がある可能性があるためです。
ここで、特定の翻訳の情報をその ID で更新したいと考えています。選択したものを更新するのが最も簡単なようです。
このような構文を見つけました
UPDATE langA
SET langA.word = 'newword'
FROM langA, langB, translation
WHERE translation.id = 5
AND langA.id = translation.idA
AND langB.id = translation.idB
ただし、これにより、「「langA、langB、translation WHERE translation.id = ...」の近く」というエラーが表示されます。
私は何を間違っていますか?