1- COPY users (id, password_hash, name, balance)
2- FROM ' /store-init-csvs/init-data- users.csv '
3- WITH (FORMAT CSV, HEADER, DELIMITER ' , ' );
4- SELECT setval(pg_get_serial_sequence( ' users ' , ' id ' ), COALESCE( MAX (id), 0 ) + 1 ) FROM users ;
1+ -- init users
2+ COPY users (id, password_hash, name, balance)
3+ FROM ' /store-init-csvs/init-data-users.csv '
4+ WITH (FORMAT csv, HEADER, DELIMITER ' , ' ) ;
55
6- COPY tags(id, name)
7- FROM ' /store-init-csvs/init-data-tags.csv'
8- WITH (FORMAT CSV, HEADER, DELIMITER ' ,' );
9- SELECT setval(pg_get_serial_sequence(' tags' , ' id' ), COALESCE(MAX (id), 0 ) + 1 ) FROM tags;
10-
11- COPY studios(id, name)
6+ SELECT
7+ setval(
8+ pg_get_serial_sequence(' users' , ' id' ),
9+ coalesce(max (id), 0 ) + 1
10+ )
11+ FROM users;
12+ -- init tags
13+ COPY tags (id, name)
14+ FROM ' /store-init-csvs/init-data-tags.csv'
15+ WITH (FORMAT csv, HEADER, DELIMITER ' ,' );
16+ SELECT
17+ setval(
18+ pg_get_serial_sequence(' tags' , ' id' ),
19+ coalesce(max (id), 0 ) + 1
20+ )
21+ FROM tags;
22+ -- init studios
23+ COPY studios (id, name)
1224FROM ' /store-init-csvs/init-data-studios.csv'
13- WITH (FORMAT CSV, HEADER, DELIMITER ' ,' );
14- SELECT setval(pg_get_serial_sequence(' studios' , ' id' ), COALESCE(MAX (id), 0 ) + 1 ) FROM studios;
25+ WITH (FORMAT csv, HEADER, DELIMITER ' ,' );
1526
16- COPY games(id, name, price, description, brief, studio_id)
27+ SELECT
28+ setval(
29+ pg_get_serial_sequence(' studios' , ' id' ),
30+ coalesce(max (id), 0 ) + 1
31+ )
32+ FROM studios;
33+ -- init games
34+ COPY games (id, name, price, description, brief, studio_id)
1735FROM ' /store-init-csvs/init-data-games.csv'
18- WITH (FORMAT CSV, HEADER, DELIMITER ' ,' );
19- SELECT setval(pg_get_serial_sequence(' games' , ' id' ), COALESCE(MAX (id), 0 ) + 1 ) FROM games;
36+ WITH (FORMAT csv, HEADER, DELIMITER ' ,' );
2037
21- COPY game_tags(game_id, tag_id)
38+ SELECT
39+ setval(
40+ pg_get_serial_sequence(' games' , ' id' ),
41+ coalesce(max (id), 0 ) + 1
42+ )
43+ FROM games;
44+ -- init game_tags
45+ COPY game_tags (game_id, tag_id)
2246FROM ' /store-init-csvs/init-data-game-tags.csv'
23- WITH (FORMAT CSV , HEADER, DELIMITER ' ,' );
24-
25- COPY purchases(id, owner_id, buyer_id, ts, game_id)
47+ WITH (FORMAT csv , HEADER, DELIMITER ' ,' );
48+ -- init purchases
49+ COPY purchases (id, owner_id, buyer_id, ts, game_id)
2650FROM ' /store-init-csvs/init-data-purchases.csv'
27- WITH (FORMAT CSV, HEADER, DELIMITER ' ,' , NULL ' NULL' );
28- SELECT setval(pg_get_serial_sequence(' purchases' , ' id' ), COALESCE(MAX (id), 0 ) + 1 ) FROM purchases;
51+ WITH (FORMAT csv, HEADER, DELIMITER ' ,' , NULL ' NULL' );
2952
53+ SELECT
54+ setval(
55+ pg_get_serial_sequence(' purchases' , ' id' ),
56+ coalesce(max (id), 0 ) + 1
57+ )
58+ FROM purchases;
3059-- create temporary table for games pictures to transform csv
3160CREATE TEMP TABLE IF NOT EXISTS temp4gpictures (
3261 id INTEGER PRIMARY KEY ,
@@ -37,48 +66,58 @@ CREATE TEMP TABLE IF NOT EXISTS temp4gpictures (
3766 img TEXT
3867);
3968
40- COPY temp4gpictures
41- FROM ' /store-init-csvs/init-games-pictures.csv'
42- WITH (FORMAT CSV , HEADER);
69+ COPY temp4gpictures
70+ FROM ' /store-init-csvs/init-games-pictures.csv'
71+ WITH (FORMAT csv , HEADER, DELIMITER ' , ' );
4372
4473INSERT INTO games_pictures (id, name, game_id, img_type, img_fmt)
4574SELECT
4675 s .id ,
47- s .id ::TEXT || ' g.' || s .img_fmt as name ,
76+ s .id ::TEXT || ' g.' || s .img_fmt AS picture_name ,
4877 s .game_id ,
4978 s .img_type ,
5079 s .img_fmt
5180FROM
52- temp4gpictures s
81+ temp4gpictures AS s
5382ON CONFLICT (id) DO NOTHING;
54- SELECT setval(pg_get_serial_sequence(' games_pictures' , ' id' ), COALESCE(MAX (id), 0 ) + 1 ) FROM games_pictures;
83+ SELECT
84+ setval(
85+ pg_get_serial_sequence(' games_pictures' , ' id' ),
86+ coalesce(max (id), 0 ) + 1
87+ )
88+ FROM games_pictures;
5589
5690DROP TABLE temp4gpictures;
5791-- end of copy games pictures
5892
5993-- create temporary table for profile pictures to transform csv
6094CREATE TEMP TABLE IF NOT EXISTS temp4ppictures (
61- id INTEGER PRIMARY KEY ,
62- name TEXT ,
63- user_id INTEGER ,
64- img_fmt TEXT ,
65- img TEXT
95+ id INTEGER PRIMARY KEY ,
96+ name TEXT ,
97+ user_id INTEGER ,
98+ img_fmt TEXT ,
99+ img TEXT
66100);
67101
68102COPY temp4ppictures
69103FROM ' /store-init-csvs/init-profile-pictures.csv'
70- WITH (FORMAT CSV , HEADER);
104+ WITH (FORMAT csv , HEADER, DELIMITER ' , ' );
71105
72106INSERT INTO profiles_pictures (id, name, user_id, img_fmt)
73107SELECT
74- s .id ,
75- s .id ::TEXT || ' p.' || s .img_fmt as name ,
76- s .user_id ,
77- s .img_fmt
108+ s .id ,
109+ s .id ::TEXT || ' p.' || s .img_fmt AS profile_pic_name ,
110+ s .user_id ,
111+ s .img_fmt
78112FROM
79- temp4ppictures s
113+ temp4ppictures AS s
80114ON CONFLICT (id) DO NOTHING;
81- SELECT setval(pg_get_serial_sequence(' profiles_pictures' , ' id' ), COALESCE(MAX (id), 0 ) + 1 ) FROM profiles_pictures;
115+ SELECT
116+ setval(
117+ pg_get_serial_sequence(' profiles_pictures' , ' id' ),
118+ coalesce(max (id), 0 ) + 1
119+ )
120+ FROM profiles_pictures;
82121
83122DROP TABLE temp4ppictures;
84123
0 commit comments