Create different DBs for each table

This commit is contained in:
coolneng 2020-01-06 08:31:21 +01:00
parent cbc1c08350
commit 6ef88e9b23
Signed by: coolneng
GPG Key ID: 9893DA236405AF57
9 changed files with 202521 additions and 3 deletions

View File

@ -1,3 +1,4 @@
DB_NAME = "igdb" DB_NAME = "igdb"
DB_USER = "igdb" DB_USER = "igdb"
DB_PW = "agentorange" DB_PW = "agentorange"
ADMIN_PW = "fuckmonsanto"

View File

@ -76,10 +76,14 @@ class Annual_Change(db.Model):
class User(db.Model): class User(db.Model):
uid = db.Column(db.Integer, primary_key=True) uid = db.Column(db.Integer, primary_key=True)
registration_date = db.Column(db.DateTime, nullable=False) registration_date = db.Column(db.DateTime, nullable=False)
username = db.Column(db.String(20), nullable=False, unique=True)
password = db.Column(db.String(60))
def __init__(self, uid): def __init__(self, uid, username, password):
self.uid = uid self.uid = uid
self.registration_date = datetime.today() self.registration_date = datetime.today()
self.username = username
self.password = password
def create_tables(): def create_tables():

View File

@ -1,6 +1,7 @@
from iso3166 import countries as co from iso3166 import countries as co
from pandas import DataFrame, concat, read_csv from pandas import DataFrame, concat, read_csv
from csv import QUOTE_NONNUMERIC from csv import QUOTE_NONNUMERIC
from constants import ADMIN_PW
def country_conversion(political_unit) -> str: def country_conversion(political_unit) -> str:
@ -12,6 +13,7 @@ def select_columns() -> DataFrame:
min_year = 2010 min_year = 2010
fields = [ fields = [
"POLITICAL_UNIT", "POLITICAL_UNIT",
"NAME",
"WGMS_ID", "WGMS_ID",
"YEAR", "YEAR",
"AREA_SURVEY_YEAR", "AREA_SURVEY_YEAR",
@ -31,10 +33,29 @@ def select_columns() -> DataFrame:
return data return data
def create_databases(df):
users = {"UID": [7843], "USERNAME": ["admin"], "PASSWORD": [ADMIN_PW]}
files = {
"glacier": "../data/glacier.csv",
"annual_data": "../data/annual_data.csv",
"annual_change": "../data/annual_change.csv",
"users": "../data/users.csv",
}
dataframes = {
"glacier": df[["POLITICAL_UNIT", "NAME", "WGMS_ID"]].drop_duplicates(),
"annual_data": df[["WGMS_ID", "YEAR", "AREA_SURVEY_YEAR"]],
"annual_change": df[
["WGMS_ID", "YEAR", "AREA_CHANGE", "THICKNESS_CHG", "VOLUME_CHANGE"]
],
"users": DataFrame(users),
}
for key, val in dataframes.items():
val.to_csv(files[key], index=False, quoting=QUOTE_NONNUMERIC)
def main(): def main():
df = select_columns() df = select_columns()
database = "../data/igdb.csv" create_databases(df)
df.to_csv(database, index=False, quoting=QUOTE_NONNUMERIC)
if __name__ == "__main__": if __name__ == "__main__":

View File

@ -0,0 +1,22 @@
from db_setup import create_connection
from pandas import DataFrame, read_csv, to_sql
def create_dataframe() -> DataFrame:
csv_file = "../data/igdb.csv"
df = read_csv(csv_file)
return df
def insert_data(df, conn):
df.to_sql("glacier", con=conn, if_exists="replace", index=False)
def main():
conn = create_connection()
df = create_dataframe()
insert_data(df, conn)
if __name__ == "__main__":
main()

88866
data/annual_change.csv Normal file

File diff suppressed because it is too large Load Diff

88866
data/annual_data.csv Normal file

File diff suppressed because it is too large Load Diff

24734
data/glacier.csv Normal file

File diff suppressed because it is too large Load Diff

2
data/users.csv Normal file
View File

@ -0,0 +1,2 @@
"UID","USERNAME","PASSWORD"
7843,"admin","fuckmonsanto"
1 UID USERNAME PASSWORD
2 7843 admin fuckmonsanto

View File

@ -39,6 +39,8 @@ datos relevantes para estudios acerca del cambio climático, y acotando éstos a
4. *RD4*: Datos del administrador 4. *RD4*: Datos del administrador
- ID - /Entero de 4 dígitos/ - ID - /Entero de 4 dígitos/
- Fecha de alta - /Fecha en formato dd-mm-yyyy/ - Fecha de alta - /Fecha en formato dd-mm-yyyy/
- Nombre de usuario - /Cadena de 20 caracteres máximo/
- Contraseña - /Cadena de 60 caracteres máximo/
*** Funcionales *** Funcionales