roulette/import_bdd.py
2018-01-20 02:03:25 +01:00

45 lines
2 KiB
Python
Executable file

import MySQLdb
from users.models import User
from machines.models import Machine,Interface
def connect_sql():
return MySQLdb.connect(host="roulette.rez", # your host, usually localhost
user="hydra-user", # your username
passwd="q5kBLchS6ooAZDSxMeJG2gdf4gmJcfS5", # your password
db="roulette") # name of the data base
def process():
# Connexion à la base SQLite locale
con = connect_sql()
cur = con.cursor()
print("Drop tables")
cur.execute('''drop table if exists players''')
cur.execute('''drop table if exists machines''')
print("create tables")
cur.execute('''create table players (id integer primary key auto_increment,firstname text not null,name text not null, ban_end double not null)''')
cur.execute('''create table machines (id int primary key auto_increment,player_id int not null,ip text not null)''')
print("select players")
cur.execute("""select id from players""")
players = cur.fetchall()
players = [player[0] for player in players]
print("select machines")
cur.execute("""select ip from machines""")
machines = cur.fetchall()
machines = [machine[0] for machine in machines]
u = User.objects.filter(school=1)
print("Let's go !!!")
for x,user in enumerate(u):
print("Avancement : {}%".format(round(x/len(u)*100, 2)), end="\r")
if user.has_access() and (user.is_adherent() or user.end_adhesion()):
if user.uid_number not in players:
s = """insert into players values ({},"{}","{}",{});""".format(user.uid_number, user.name, user.surname, 0)
cur.execute(s)
for m in Machine.objects.filter(user= user):
for i in Interface.objects.filter(machine = m):
if i.ipv4.ipv4 not in machines:
s = """insert into machines values ({},{},"{}") ;""".format(i.id, user.uid_number, i.ipv4.ipv4)
cur.execute(s)
con.commit()
con.close()