これをいくつかの方法で試しましたが、テーブルに列を追加しようとすると、毎回構文エラーが発生します。
私はデータベースが初めてなので、おそらく基本的なことで間違っていますが、これが機能しない理由はわかりません。
任意の入力をいただければ幸いです。
追伸クエリ行の最後には「;」があります。スクリーンショットではそれを確認できません。
これまでのところ、「列の追加」を「列の追加」に変更して、「追加」の後に列を続けてみました。 GUIを使用してDBeaverで列をコピーできることは承知していますが、このSQLを機能させたいと考えています。
Postgres docs によると、正しい構文は次のとおりです。
ALTER TABLE <your_table>
ADD COLUMN <column name> <column type>,
ADD COLUMN <column name> <column type>,
ADD COLUMN <column name> <column type>;
PostgreSQL ADD COLUMN:テーブルに1つ以上の列を追加する のPostgresチュートリアルをご覧ください。
エラーを再現する最小限の例を設定しました。
CREATE TABLE newtable (id int);
ALTER TABLE newtable
ADD COLUMNS f1 float8, f2 int;
エラー:「float8」またはその近くの構文エラー
行2:列を追加f1 float8、f2 int; ^
ALTER TABLE newtable
ADD COLUMN f1 float8, f2 int, f3 text;
エラー:「f2」またはその近くの構文エラー
行2:列を追加f1 float8、f2 int、f3テキスト。
正しい構文を使用する:
ALTER TABLE newtable
ADD COLUMN f1 float8,
ADD COLUMN f2 int,
ADD COLUMN f3 text;
✓
db <> fiddle ここ