SQL初心者です。
ファイル名:ssql2-List08_04
CREATE TABLE 費目 ( ID INTEGER, 名前 VARCHAR(20), 備考 VARCHAR(100) ); INSERT INTO 費目 ( ID,名前,備考 ) VALUES ( 1,'給料','給与や賞与が入った' );INSERT INTO 費目 ( ID,名前,備考 ) VALUES ( 2,'食費','食事代(ただし飲み会などの外食を除く)' );INSERT INTO 費目 ( ID,名前,備考 ) VALUES ( 3,'水道光熱費','水道代・電気代・ガス 代' );
上記postgresqlで実行すると下記のようなテーブルが作成されます。
postgres=> \i ssql2-List08_04 CREATE TABLE INSERT 0 1 INSERT 0 1 INSERT 0 1 postgres=> select * from 費目; id | 名前 | 備考 ----+------------+---------------------------------------- 1 | 給料 | 給与や賞与が入った 2 | 食費 | 食事代(ただし飲み会などの外食を除く) 3 | 水道光熱費 | 水道代・電気代・ガス代 (3 rows) postgres=>
その後もう一度、同じファイルを実行すると、
postgres=> \i ssql2-List08_04 psql:ssql2-List08_04:1: ERROR: relation "費目" already exists INSERT 0 1 INSERT 0 1 INSERT 0 1 postgres=> select * from 費目; id | 名前 | 備考 ----+------------+---------------------------------------- 1 | 給料 | 給与や賞与が入った 2 | 食費 | 食事代(ただし飲み会などの外食を除く) 3 | 水道光熱費 | 水道代・電気代・ガス代 1 | 給料 | 給与や賞与が入った 2 | 食費 | 食事代(ただし飲み会などの外食を除く) 3 | 水道光熱費 | 水道代・電気代・ガス代 (6 rows) postgres=>
このように行に結合される形で出力されます。
上記ファイルを実行するときに、結合されるのではなく上書きを行いたいとき、
どのような対応方法がございますでしょうか?
versionは
PostgreSQL 11.5 on x86_64-pc-linux-gnu, compiled by gcc (GCC) 4.8.3 20140911 (Red Hat 4.8.3-9), 64-bit
Amazon Linux AMI release 2018.03
です。
回答3件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。