-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathQuery.py
More file actions
33 lines (27 loc) · 973 Bytes
/
Query.py
File metadata and controls
33 lines (27 loc) · 973 Bytes
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
def is_float(value):
try:
float(value)
return True
except:
return False
def Create_Table_Query(table_name, column_names, data_types, constraints):
columns = []
for column_name, data_type, constraint in zip(column_names, data_types, constraints):
columns.append(f'{column_name} {data_type} {constraint}')
column_query = ', '.join(columns)
query = f'CREATE TABLE {table_name} ({column_query});'
return query
def Fill_Table_Query(table_name, data):
column_names, *data = data
query = f"INSERT INTO {table_name} ({', '.join(column_names)}) VALUES "
value_rows = []
for row in data:
values = []
for value in row:
if is_float(value) or value.lower() == 'null':
values.append(value)
else:
values.append(f"'{value}'")
value_rows.append(f"({', '.join(values)})")
query += ', '.join(value_rows) + ";"
return query