teratail header banner
teratail header banner
質問するログイン新規登録

回答編集履歴

5

変更

2018/01/01 20:17

投稿

A.Ichi
A.Ichi

スコア4070

answer CHANGED
@@ -1,4 +1,4 @@
1
- エラーの原因が不明なので、上手くいくかは、定かではありませんが、deleteするのではなく必要なレコードを出力し、テーブルを作成し直してLOADされてはどうでしょうか?
1
+ エラーの原因が不明なので、上手くいくかは、定かではありませんが、deleteするのではなく必要なレコードを出力し、テーブルを作成し直して(truncate)LOADされてはどうでしょうか?
2
2
 
3
3
  ```sql
4
4
  --copy out where id

4

変更

2018/01/01 20:17

投稿

A.Ichi
A.Ichi

スコア4070

answer CHANGED
@@ -4,9 +4,11 @@
4
4
  --copy out where id
5
5
  \copy (SELECT * FROM order WHERE id > 10) to /home/www/dbiba000/public_html/order2.cpy
6
6
 
7
- --table recreate
7
+ --table recreate
8
8
  drop table order;
9
9
  create table order ....;
10
+ -- or truncate
11
+ truncate table order;
10
12
 
11
13
  --copy back
12
14
  \copy order from /home/www/dbiba000/public_html/order2.cpy

3

変更

2018/01/01 02:37

投稿

A.Ichi
A.Ichi

スコア4070

answer CHANGED
@@ -1,7 +1,7 @@
1
1
  エラーの原因が不明なので、上手くいくかは、定かではありませんが、deleteするのではなく必要なレコードを出力し、テーブルを作成し直してLOADされてはどうでしょうか?
2
2
 
3
3
  ```sql
4
- --copy out
4
+ --copy out where id
5
5
  \copy (SELECT * FROM order WHERE id > 10) to /home/www/dbiba000/public_html/order2.cpy
6
6
 
7
7
  --table recreate

2

追加

2017/12/31 16:27

投稿

A.Ichi
A.Ichi

スコア4070

answer CHANGED
@@ -1,4 +1,4 @@
1
- エラーの原因が不明なので、上手くいくかは、定かではありませんが、deleteするのではなく必要なレコードを出力し、テーブルを作成し直してLOADはできますでしょうか?
1
+ エラーの原因が不明なので、上手くいくかは、定かではありませんが、deleteするのではなく必要なレコードを出力し、テーブルを作成し直してLOADされてどうでしょうか?
2
2
 
3
3
  ```sql
4
4
  --copy out
@@ -10,4 +10,7 @@
10
10
 
11
11
  --copy back
12
12
  \copy order from /home/www/dbiba000/public_html/order2.cpy
13
- ```
13
+ ```
14
+
15
+ テーブルのdrop&create部分のddlはpg_dumpでも作成できます
16
+ pg_dump database -s -c -t order >/home/www/dbiba000/public_html/order2.ddl

1

変更

2017/12/31 16:18

投稿

A.Ichi
A.Ichi

スコア4070

answer CHANGED
@@ -1,4 +1,4 @@
1
- 上手くいくかは、定かではありませんが、deleteするのではなく必要なレコードを出力し、テーブルを作成し直してLOADはできますでしょうか?
1
+ エラーの原因が不明なので、上手くいくかは、定かではありませんが、deleteするのではなく必要なレコードを出力し、テーブルを作成し直してLOADはできますでしょうか?
2
2
 
3
3
  ```sql
4
4
  --copy out
@@ -9,5 +9,5 @@
9
9
  create table order ....;
10
10
 
11
11
  --copy back
12
- \copy order from /home/www/dbiba000/public_html/order2.csv
12
+ \copy order from /home/www/dbiba000/public_html/order2.cpy
13
13
  ```