Adds python file to setup database

This commit is contained in:
William Tran 2021-03-11 07:20:20 -05:00 committed by Neil Parikh
parent 37b59ed480
commit a7b4e539df
2 changed files with 37 additions and 1 deletions

1
.gitignore vendored
View File

@ -1 +1,2 @@
venv
links.db

35
backend/setup_db.py Normal file
View File

@ -0,0 +1,35 @@
import sqlite3
import os
DB_PATH = os.path.join(os.path.dirname(__file__), 'links.db')
con = sqlite3.connect(DB_PATH)
# array of links to store
links = [
('http://csclub.uwaterloo.ca/','CS Club Website',3,0),
('https://www.instagram.com/uwcsclub/','Instagram',4,1),
('https://www.facebook.com/uw.computerscienceclub','Facebook',5,2),
('http://twitch.tv/uwcsclub','Twitch',6,3),
('http://bit.ly/uwcsclub-yt','YouTube',7,4),
]
# SQLite setup
cur = con.cursor()
# test if table already exists
cur.execute("SELECT name FROM sqlite_master WHERE type='table' AND name='links'")
if cur.fetchone():
raise Exception('Links table already exists.')
else:
cur.execute('''CREATE TABLE links (
url text NOT NULL,
name text NOT NULL,
clicks int NOT NULL,
position int NOT NULL UNIQUE,
UNIQUE(url, name)
)''')
cur.executemany('INSERT INTO links VALUES (?,?,?,?)', links)
con.commit()
con.close()