-
Notifications
You must be signed in to change notification settings - Fork 0
/
insertar_vivienda.py
59 lines (38 loc) · 1.42 KB
/
insertar_vivienda.py
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
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
from model import Localidad, Vivienda
import psycopg2
ruta_vivienda = "./data/datos_tratados/vivienda_dim.csv"
lista_vivienda = []
with open(ruta_vivienda, 'r', encoding="utf-8") as archivo:
next(archivo, None)
for linea in archivo:
linea = linea.rstrip()
separador = ","
lista = linea.split(",")
#print(lista[1])
vivienda = Vivienda(id_vivienda=int(float(lista[1])), id_casa=int(lista[2]))
lista_vivienda.append(vivienda)
#print(lista_vivienda)
# Establecer la conexión
conn = psycopg2.connect(
host="dpg-chq070ik728ivvqbkdog-a.oregon-postgres.render.com",
database="db_asma",
user="root",
password="cOYOkQFWSQ4KtEBo5hGheF9cyr60DRv5"
)
def insertar_data(lista) -> int:
try:
#i = 0
with open("registros.txt", "w") as archivo:
for value in lista:
#if i == 5:
# break
insert_query = "INSERT INTO public.vivienda_dim(id_vivienda, id_casa) VALUES "
registro = insert_query + "(" + str(value.id_vivienda) + "," + str(value.id_casa) + ");\n"
archivo.write(registro)
print(registro)
#i += 1
return 0
except (Exception, psycopg2.DatabaseError) as error:
print("Error al insertar datos", error)
return -1
print(insertar_data(lista_vivienda))