Skip to content
Snippets Groups Projects
Commit 84ad20fb authored by aldo.gonzalez-lorenzo's avatar aldo.gonzalez-lorenzo
Browse files

Make several SQL queries instead of a single one

parent 19749cb7
Branches development
No related tags found
No related merge requests found
......@@ -154,7 +154,7 @@ def find_types(labels, data):
def make_row(fields, i) -> str:
def make_row(fields, i, last=False) -> str:
values = [i]
for key in labels:
if 'varchar' in labels[key]['type']:
......@@ -166,6 +166,8 @@ def make_row(fields, i) -> str:
else:
value = fields[key] if key in fields else 0
values.append(value)
if last:
return '(' + ', '.join(f'{v}' for v in values) + ');\n'
return '(' + ', '.join(f'{v}' for v in values) + '),\n'
# return f'({i}, "{fields["acad_mies"]}", "{fields["acc_ab"]}", "{fields["acc_aca_orig"]}", "{fields["ville_etab"]}", "{fields["lib_for_voe_ins"]}"),\n'
......@@ -173,7 +175,6 @@ def make_row(fields, i) -> str:
with open('fr-esr-parcoursup.json', 'r') as f:
data = json.load(f)
random.shuffle(data)
data = data[:1000]
find_types(labels, data)
......@@ -186,12 +187,14 @@ for k, v in labels.items():
lines.append(" PRIMARY KEY (`id`)")
lines.append("\n) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;\n\n")
lines.append('INSERT INTO `parcoursup` (`id`, ' + ', '.join(f'`{k}`' for k in labels) + ') VALUES\n')
# print(lines)
for i, datum in enumerate(data):
lines.append(make_row(datum['fields'], i+1))
for i in range(len(data)):
if i % 100 == 0:
lines.append('INSERT INTO `parcoursup` (`id`, ' + ', '.join(f'`{k}`' for k in labels) + ') VALUES\n')
lines.append(make_row(data[i]['fields'], i+1))
elif i % 100 == 99:
lines.append(make_row(data[i]['fields'], i+1, True))
else:
lines.append(make_row(data[i]['fields'], i+1))
lines.append(ending)
with open('dog_breeds.sql', 'w') as writer:
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment