Reflect the current year in all TechnoLibre license headers across script/, test/, and docker/. Generated by Claude Code 2.1.74 model claude-sonnet-4-6 Co-Authored-By: Mathieu Benoit <mathben@technolibre.ca>
2088 lines
60 KiB
Python
Executable file
2088 lines
60 KiB
Python
Executable file
#!/usr/bin/env python3
|
|
# © 2021-2026 TechnoLibre (http://www.technolibre.ca)
|
|
# License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl)
|
|
from collections import defaultdict
|
|
|
|
import pymysql
|
|
|
|
# Fix date with string "0000-00-00"
|
|
|
|
# cr.execute("SET sql_mode = 'NO_ZERO_DATE';")
|
|
# cr.execute("SET sql_mode = 'NO_ZERO_IN_DATE';")
|
|
|
|
# query_search = """SELECT *
|
|
# FROM tbl_demande_service
|
|
# WHERE DateFin = "0000-00-00"
|
|
# """
|
|
#
|
|
# cr.execute(query_search)
|
|
# old_v = cr.fetchall()
|
|
#
|
|
# query = """UPDATE `tbl_demande_service`
|
|
# SET DateFin = NULL
|
|
# WHERE DateFin = "0000-00-00"
|
|
# """
|
|
#
|
|
# v = cr.execute(query)
|
|
|
|
# lst_echange_service = cr.fetchall()
|
|
# query_search = """SELECT *
|
|
# FROM tbl_echange_service
|
|
# """
|
|
#
|
|
# cr.execute(query_search)
|
|
# lst_echange_service = cr.fetchall()
|
|
|
|
|
|
def main():
|
|
database = "mariadb_sql_example_1"
|
|
host = "localhost"
|
|
port = 3306
|
|
user = "organization"
|
|
password = "organization"
|
|
schema = "public"
|
|
|
|
conn = pymysql.connect(
|
|
db=database, host=host, port=port, user=user, password=password
|
|
)
|
|
|
|
cr = conn.cursor()
|
|
|
|
debug_over_generic(
|
|
cr, "tbl_droits_admin", "NoMembre", "tbl_membre", "NoMembre"
|
|
)
|
|
debug_over_generic(
|
|
cr, "tbl_type_compte", "NoMembre", "tbl_membre", "NoMembre"
|
|
)
|
|
debug_over_generic(
|
|
cr,
|
|
"tbl_categorie_sous_categorie",
|
|
"NoCategorie",
|
|
"tbl_categorie",
|
|
"NoCategorie",
|
|
)
|
|
debug_over_generic(
|
|
cr,
|
|
"tbl_commande_membre_produit",
|
|
"NoFournisseurProduitCommande",
|
|
"tbl_fournisseur_produit_commande",
|
|
"NoFournisseurProduitCommande",
|
|
)
|
|
debug_over_generic(
|
|
cr, "tbl_echange_service", "NoMembreVendeur", "tbl_membre", "NoMembre"
|
|
)
|
|
debug_over_generic(
|
|
cr,
|
|
"tbl_fournisseur_produit",
|
|
"NoFournisseur",
|
|
"tbl_fournisseur",
|
|
"NoFournisseur",
|
|
)
|
|
# TODO too much print ;-)
|
|
# debug_over_generic(
|
|
# cr, "tbl_log_acces", "NoMembre", "tbl_membre", "NoMembre"
|
|
# )
|
|
debug_over_generic(
|
|
cr,
|
|
"tbl_membre",
|
|
"NoOrigine",
|
|
"tbl_origine",
|
|
"NoOrigine",
|
|
)
|
|
debug_over_generic(
|
|
cr,
|
|
"tbl_membre",
|
|
"TransfereDe",
|
|
"tbl_organization",
|
|
"NoOrganization",
|
|
)
|
|
# debug_over_generic(
|
|
# cr,
|
|
# "tbl_membre",
|
|
# "NoMembreConjoint",
|
|
# "tbl_membre",
|
|
# "NoMembre",
|
|
# )
|
|
|
|
delete_record(cr)
|
|
alter_table(cr)
|
|
replace_record(cr)
|
|
migrate_record(cr)
|
|
inverse_record(cr)
|
|
add_foreign_key(cr)
|
|
|
|
conn.commit()
|
|
cr.close()
|
|
|
|
|
|
def debug_over_generic(cr, table1, field1, table2, field2):
|
|
print(f"Debug over {table1} {field1}")
|
|
query_search = f"""SELECT {field1}
|
|
FROM {table1}
|
|
"""
|
|
cr.execute(query_search)
|
|
lst_1 = cr.fetchall()
|
|
|
|
set_1 = set([a[0] for a in lst_1])
|
|
|
|
query_search = f"""SELECT {field2}
|
|
FROM {table2}
|
|
"""
|
|
cr.execute(query_search)
|
|
lst_2 = cr.fetchall()
|
|
set_2 = set([a[0] for a in lst_2])
|
|
|
|
set_missing = set_1.difference(set_2)
|
|
# Result 7703
|
|
if None in set_missing:
|
|
set_missing.remove(None)
|
|
print(set_missing)
|
|
if set_missing:
|
|
str_tpl = str(tuple(set_missing))
|
|
if str_tpl.endswith(",)"):
|
|
str_tpl = str_tpl.replace(",)", ")")
|
|
query_search = f"""SELECT *
|
|
FROM {table1}
|
|
WHERE {field1} in {str_tpl}
|
|
"""
|
|
cr.execute(query_search)
|
|
lst_info = cr.fetchall()
|
|
print(f"From table {table1}")
|
|
print(lst_info)
|
|
|
|
|
|
def delete_record(cr):
|
|
# Delete record
|
|
print("Delete record")
|
|
query_search = """DELETE FROM `tbl_droits_admin` WHERE NoMembre in (0, 945, 7703, 1253, 2655);"""
|
|
cr.execute(query_search)
|
|
|
|
query_search = """DELETE FROM `tbl_type_compte` WHERE NoMembre in (0, 945, 7703, 1253, 2652);"""
|
|
cr.execute(query_search)
|
|
|
|
query_search = """
|
|
DELETE FROM `tbl_commande_membre_produit`
|
|
WHERE NoFournisseurProduitCommande in (22659, 22724, 22662, 22663, 22732, 22670, 22705, 22737, 22741, 22679, 22680, 22682, 22655);
|
|
"""
|
|
cr.execute(query_search)
|
|
|
|
query_search = """
|
|
DELETE FROM `tbl_echange_service`
|
|
WHERE NoMembreVendeur in (7703);
|
|
"""
|
|
cr.execute(query_search)
|
|
|
|
query_search = """
|
|
DELETE FROM `tbl_categorie_sous_categorie`
|
|
WHERE NoCategorie in (999);
|
|
"""
|
|
cr.execute(query_search)
|
|
|
|
query_search = """
|
|
DELETE FROM `tbl_sous_categorie`
|
|
WHERE NoSousCategorie = "10";
|
|
"""
|
|
cr.execute(query_search)
|
|
|
|
|
|
def migrate_record(cr):
|
|
print("Migrate record")
|
|
# Fix tbl_echange_service NbHeure, transform time to float
|
|
query_search = f"""SELECT *
|
|
FROM tbl_categorie
|
|
"""
|
|
cr.execute(query_search)
|
|
lst_categorie = cr.fetchall()
|
|
|
|
query_search = f"""SELECT *
|
|
FROM tbl_sous_categorie
|
|
"""
|
|
cr.execute(query_search)
|
|
lst_sous_categorie = cr.fetchall()
|
|
|
|
query_search = f"""SELECT *
|
|
FROM tbl_categorie_sous_categorie
|
|
"""
|
|
cr.execute(query_search)
|
|
lst_categorie_sous_categorie = cr.fetchall()
|
|
|
|
# Insert Id into tbl_sous_categorie
|
|
i = 0
|
|
for sous_categorie_id in lst_sous_categorie:
|
|
i += 1
|
|
query_search = f"""UPDATE tbl_sous_categorie set NoSousCategorieId={i}
|
|
WHERE NoCategorie={sous_categorie_id[1]} and NoSousCategorie='{sous_categorie_id[0]}'
|
|
"""
|
|
cr.execute(query_search)
|
|
query_search = f"""SELECT *
|
|
FROM tbl_sous_categorie
|
|
"""
|
|
cr.execute(query_search)
|
|
lst_sous_categorie = cr.fetchall()
|
|
|
|
# Update all NoSousCategorieId from tbl_categorie_sous_categorie
|
|
for categorie_sous_categorie_id in lst_categorie_sous_categorie:
|
|
id_sous_categorie = _search_id_from_sous_categorie(
|
|
lst_sous_categorie,
|
|
categorie_sous_categorie_id[2],
|
|
categorie_sous_categorie_id[1],
|
|
)
|
|
if id_sous_categorie is None:
|
|
raise ValueError(
|
|
f"Get null from {categorie_sous_categorie_id[2]} and"
|
|
f" {categorie_sous_categorie_id[1]}"
|
|
)
|
|
query_search = f"""UPDATE tbl_categorie_sous_categorie set NoSousCategorieId={id_sous_categorie}
|
|
WHERE NoCategorieSousCategorie={categorie_sous_categorie_id[0]}
|
|
"""
|
|
cr.execute(query_search)
|
|
|
|
# Validate for debugging
|
|
query_search = f"""SELECT *
|
|
FROM tbl_categorie_sous_categorie
|
|
"""
|
|
cr.execute(query_search)
|
|
lst_categorie_sous_categorie = cr.fetchall()
|
|
pass
|
|
|
|
|
|
def inverse_record(cr):
|
|
print("Inverse record")
|
|
query_search = f"""SHOW COLUMNS FROM `tbl_pointservice` LIKE 'NoMembre';
|
|
"""
|
|
cr.execute(query_search)
|
|
is_exist = cr.fetchall()
|
|
|
|
if not is_exist:
|
|
return
|
|
|
|
# Ignore this, this link need to be dead
|
|
try:
|
|
query_search = f"""alter table tbl_membre
|
|
drop column EstUnPointService;
|
|
"""
|
|
cr.execute(query_search)
|
|
except Exception:
|
|
pass
|
|
|
|
query_search = f"""alter table tbl_membre
|
|
add EstUnPointService tinyint(1) null;
|
|
"""
|
|
cr.execute(query_search)
|
|
|
|
# try:
|
|
# query_search = f"""alter table tbl_pointservice
|
|
# drop column NoArrondissement;
|
|
# """
|
|
# cr.execute(query_search)
|
|
# except Exception:
|
|
# pass
|
|
# try:
|
|
# query_search = f"""alter table tbl_pointservice
|
|
# drop column NoVille;
|
|
# """
|
|
# cr.execute(query_search)
|
|
# except Exception:
|
|
# pass
|
|
# try:
|
|
# query_search = f"""alter table tbl_pointservice
|
|
# drop column NoRegion;
|
|
# """
|
|
# cr.execute(query_search)
|
|
# except Exception:
|
|
# pass
|
|
# try:
|
|
# query_search = f"""alter table tbl_pointservice
|
|
# drop column CodePostale;
|
|
# """
|
|
# cr.execute(query_search)
|
|
# except Exception:
|
|
# pass
|
|
# try:
|
|
# query_search = f"""alter table tbl_pointservice
|
|
# drop column DateAdhesion;
|
|
# """
|
|
# cr.execute(query_search)
|
|
# except Exception:
|
|
# pass
|
|
# try:
|
|
# query_search = f"""alter table tbl_pointservice
|
|
# drop column Adresse;
|
|
# """
|
|
# cr.execute(query_search)
|
|
# except Exception:
|
|
# pass
|
|
# try:
|
|
# query_search = f"""alter table tbl_pointservice
|
|
# drop column Telephone1;
|
|
# """
|
|
# cr.execute(query_search)
|
|
# except Exception:
|
|
# pass
|
|
# try:
|
|
# query_search = f"""alter table tbl_pointservice
|
|
# drop column Telephone2;
|
|
# """
|
|
# cr.execute(query_search)
|
|
# except Exception:
|
|
# pass
|
|
# try:
|
|
# query_search = f"""alter table tbl_pointservice
|
|
# drop column Courriel;
|
|
# """
|
|
# cr.execute(query_search)
|
|
# except Exception:
|
|
# pass
|
|
# try:
|
|
# query_search = f"""alter table tbl_pointservice
|
|
# drop column RecevoirCourrielGRP;
|
|
# """
|
|
# cr.execute(query_search)
|
|
# except Exception:
|
|
# pass
|
|
# try:
|
|
# query_search = f"""alter table tbl_pointservice
|
|
# drop column Date_MAJ_Membre;
|
|
# """
|
|
# cr.execute(query_search)
|
|
# except Exception:
|
|
# pass
|
|
#
|
|
# try:
|
|
# query_search = f"""alter table tbl_achat_ponctuel
|
|
# drop column NoPointService;
|
|
# """
|
|
# cr.execute(query_search)
|
|
# except Exception:
|
|
# pass
|
|
#
|
|
# try:
|
|
# query_search = f"""alter table tbl_commande_membre
|
|
# drop column NoPointService;
|
|
# """
|
|
# cr.execute(query_search)
|
|
# except Exception:
|
|
# pass
|
|
#
|
|
# query_search = f"""alter table tbl_pointservice
|
|
# add NoArrondissement int unsigned null;
|
|
# """
|
|
# cr.execute(query_search)
|
|
# query_search = f"""alter table tbl_pointservice
|
|
# add NoVille int unsigned null;
|
|
# """
|
|
# cr.execute(query_search)
|
|
# query_search = f"""alter table tbl_pointservice
|
|
# add NoRegion int unsigned null;
|
|
# """
|
|
# cr.execute(query_search)
|
|
# query_search = f"""alter table tbl_pointservice
|
|
# add CodePostale varchar(10);
|
|
# """
|
|
# cr.execute(query_search)
|
|
# query_search = f"""alter table tbl_pointservice
|
|
# add DateAdhesion date null;
|
|
# """
|
|
# cr.execute(query_search)
|
|
# query_search = f"""alter table tbl_pointservice
|
|
# add Adresse varchar(60);
|
|
# """
|
|
# cr.execute(query_search)
|
|
# query_search = f"""alter table tbl_pointservice
|
|
# add Telephone1 varchar(15);
|
|
# """
|
|
# cr.execute(query_search)
|
|
# query_search = f"""alter table tbl_pointservice
|
|
# add Telephone2 varchar(15) null;
|
|
# """
|
|
# cr.execute(query_search)
|
|
# query_search = f"""alter table tbl_pointservice
|
|
# add Courriel varchar(60) null;
|
|
# """
|
|
# cr.execute(query_search)
|
|
# query_search = f"""alter table tbl_pointservice
|
|
# add RecevoirCourrielGRP tinyint(1) null;
|
|
# """
|
|
# cr.execute(query_search)
|
|
# query_search = f"""alter table tbl_pointservice
|
|
# add Date_MAJ_Membre datetime null;
|
|
# """
|
|
# cr.execute(query_search)
|
|
#
|
|
# query_search = f"""alter table tbl_achat_ponctuel
|
|
# add NoPointService int unsigned null;
|
|
# """
|
|
# cr.execute(query_search)
|
|
#
|
|
# query_search = f"""alter table tbl_commande_membre
|
|
# add NoPointService int unsigned null;
|
|
# """
|
|
# cr.execute(query_search)
|
|
|
|
# Move all information
|
|
query_search = f"""SELECT *
|
|
FROM tbl_pointservice
|
|
"""
|
|
cr.execute(query_search)
|
|
lst_pointservice = cr.fetchall()
|
|
|
|
# for tpl_pointservice in lst_pointservice:
|
|
# query_search = f"""SELECT *
|
|
# FROM tbl_membre WHERE NoMembre = {tpl_pointservice[2]};
|
|
# """
|
|
# cr.execute(query_search)
|
|
# membre = cr.fetchone()
|
|
#
|
|
# sql = f"""UPDATE tbl_pointservice SET """
|
|
#
|
|
# if membre[10]:
|
|
# sql += f"""
|
|
# NoArrondissement = {membre[10]},
|
|
# """
|
|
# sql += f"""
|
|
# NoVille = {membre[11]},
|
|
# NoRegion = {membre[12]},
|
|
# CodePostale = "{membre[15]}",
|
|
# DateAdhesion = "{membre[16]}",
|
|
# Adresse = "{membre[19]}",
|
|
# Telephone1 = "{membre[20]}",
|
|
# """
|
|
# if membre[23]:
|
|
# sql += f"""
|
|
# Telephone2 = "{membre[23]}",
|
|
# """
|
|
# if membre[29]:
|
|
# sql += f"""
|
|
# Courriel = "{membre[29]}",
|
|
# """
|
|
# if membre[49]:
|
|
# sql += f"""
|
|
# RecevoirCourrielGRP = {membre[49]},
|
|
# """
|
|
# sql += f"""
|
|
# Date_MAJ_Membre = "{membre[52]}"
|
|
# """
|
|
# sql += f"""
|
|
# WHERE NoPointService = {tpl_pointservice[0]};"""
|
|
# cr.execute(sql)
|
|
#
|
|
# query_search = f"""
|
|
# DELETE FROM `tbl_membre`
|
|
# WHERE NoMembre = {tpl_pointservice[2]};
|
|
# """
|
|
# cr.execute(query_search)
|
|
#
|
|
# query_search = f"""
|
|
# UPDATE tbl_achat_ponctuel
|
|
# SET NoMembre=NULL, NoPointService={tpl_pointservice[0]}
|
|
# WHERE NoMembre = {tpl_pointservice[2]};
|
|
# """
|
|
# cr.execute(query_search)
|
|
#
|
|
# query_search = f"""
|
|
# UPDATE tbl_commande_membre
|
|
# SET NoMembre=NULL, NoPointService={tpl_pointservice[0]}
|
|
# WHERE NoMembre = {tpl_pointservice[2]};
|
|
# """
|
|
# cr.execute(query_search)
|
|
|
|
dct_membre_pointservice = defaultdict(list)
|
|
for tpl_pointservice in lst_pointservice:
|
|
dct_membre_pointservice[tpl_pointservice[2]].append(
|
|
tpl_pointservice[0]
|
|
)
|
|
|
|
for no_membre, lst_ps_id in dct_membre_pointservice.items():
|
|
if len(lst_ps_id) > 1:
|
|
print(
|
|
f"Too much value for membre admin {no_membre} point service"
|
|
f" {lst_ps_id}"
|
|
)
|
|
return
|
|
# one_ps_i = lst_ps_id[0]
|
|
sql = f"""UPDATE tbl_membre
|
|
SET EstUnPointService = -1
|
|
WHERE NoMembre = {no_membre};"""
|
|
cr.execute(sql)
|
|
|
|
try:
|
|
query_search = f"""alter table tbl_pointservice
|
|
drop column NoMembre;
|
|
"""
|
|
cr.execute(query_search)
|
|
except Exception:
|
|
pass
|
|
pass
|
|
|
|
|
|
def _search_id_from_sous_categorie(
|
|
lst_sous_categorie, no_categorie, no_sous_categorie
|
|
):
|
|
for tpl_sous_categorie in lst_sous_categorie:
|
|
if (
|
|
tpl_sous_categorie[0] == no_sous_categorie
|
|
and tpl_sous_categorie[1] == no_categorie
|
|
):
|
|
return tpl_sous_categorie[5]
|
|
|
|
|
|
def alter_table(cr):
|
|
print("Alter table")
|
|
# Fix tbl_echange_service NbHeure, transform time to float
|
|
query_search = (
|
|
"""ALTER TABLE tbl_echange_service modify NbHeure float null;"""
|
|
)
|
|
cr.execute(query_search)
|
|
query_search = """alter table tbl_commande_membre modify NoMembre int unsigned null;"""
|
|
cr.execute(query_search)
|
|
|
|
# Fix field for foreign key
|
|
query_search = """
|
|
ALTER TABLE tbl_arrondissement
|
|
MODIFY NoVille int unsigned null;
|
|
"""
|
|
cr.execute(query_search)
|
|
|
|
# Fix field for foreign key
|
|
query_search = """
|
|
ALTER TABLE tbl_fournisseur_produit
|
|
MODIFY NoFournisseur int unsigned null;
|
|
"""
|
|
cr.execute(query_search)
|
|
|
|
# Fix field for foreign key
|
|
query_search = """
|
|
ALTER TABLE tbl_membre
|
|
MODIFY NoTypeCommunication int unsigned null;
|
|
"""
|
|
cr.execute(query_search)
|
|
|
|
# Fix field for foreign key
|
|
query_search = """
|
|
ALTER TABLE tbl_membre
|
|
MODIFY NoOccupation int unsigned null;
|
|
"""
|
|
cr.execute(query_search)
|
|
|
|
# Fix field for foreign key
|
|
query_search = """
|
|
ALTER TABLE tbl_membre
|
|
MODIFY NoOrigine int unsigned null;
|
|
"""
|
|
cr.execute(query_search)
|
|
|
|
# Fix field for foreign key
|
|
query_search = """
|
|
ALTER TABLE tbl_membre
|
|
MODIFY NoSituationMaison int unsigned null;
|
|
"""
|
|
cr.execute(query_search)
|
|
|
|
# Fix field for foreign key
|
|
query_search = """
|
|
ALTER TABLE tbl_membre
|
|
MODIFY NoProvenance int unsigned null;
|
|
"""
|
|
cr.execute(query_search)
|
|
|
|
# Fix field for foreign key
|
|
query_search = """
|
|
ALTER TABLE tbl_membre
|
|
MODIFY NoRevenuFamilial int unsigned null;
|
|
"""
|
|
cr.execute(query_search)
|
|
|
|
# Fix field for foreign key
|
|
query_search = """
|
|
ALTER TABLE tbl_membre
|
|
MODIFY TransfereDe int unsigned null;
|
|
"""
|
|
cr.execute(query_search)
|
|
|
|
# Fix field for foreign key
|
|
# query_search = """
|
|
# ALTER TABLE tbl_achat_ponctuel
|
|
# MODIFY NoMembre int unsigned null;
|
|
# """
|
|
# cr.execute(query_search)
|
|
|
|
# Fix field for foreign key
|
|
table_schema = cr.connection.db.decode("utf-8")
|
|
query_search = f"""
|
|
IF NOT EXISTS( SELECT *
|
|
FROM INFORMATION_SCHEMA.COLUMNS
|
|
WHERE table_name = 'tbl_sous_categorie'
|
|
AND column_name = 'NoSousCategorieId'
|
|
AND TABLE_SCHEMA = '{table_schema}' ) THEN
|
|
|
|
alter table tbl_sous_categorie
|
|
add NoSousCategorieId int unsigned null;
|
|
|
|
create unique index tbl_sous_categorie_NoSousCategorieId_uindex
|
|
on tbl_sous_categorie (NoSousCategorieId);
|
|
END IF;
|
|
"""
|
|
cr.execute(query_search)
|
|
|
|
query_search = f"""
|
|
IF NOT EXISTS( SELECT *
|
|
FROM INFORMATION_SCHEMA.COLUMNS
|
|
WHERE table_name = 'tbl_categorie_sous_categorie'
|
|
AND column_name = 'NoSousCategorieId'
|
|
AND TABLE_SCHEMA = '{table_schema}' ) THEN
|
|
|
|
alter table tbl_categorie_sous_categorie
|
|
add NoSousCategorieId int unsigned null;
|
|
|
|
END IF;
|
|
"""
|
|
cr.execute(query_search)
|
|
|
|
# Remove wrong column NoSousCategorie de tbl_sous_categorie
|
|
# query_search = """
|
|
# alter table tbl_sous_categorie drop primary key;
|
|
# alter table tbl_sous_categorie
|
|
# add primary key (NoCategorie);
|
|
# ALTER TABLE tbl_sous_categorie
|
|
# DROP COLUMN NoSousCategorie;
|
|
# """
|
|
# cr.execute(query_search)
|
|
|
|
|
|
def replace_record(cr):
|
|
print("Replace existing record")
|
|
# Replace 0 by null
|
|
query_search = """UPDATE `tbl_organization` SET `NoArrondissement` = NULL WHERE NoArrondissement = 0;"""
|
|
cr.execute(query_search)
|
|
query_search = """UPDATE `tbl_commande_membre` SET `NoMembre` = NULL WHERE NoMembre = 0;"""
|
|
cr.execute(query_search)
|
|
query_search = """UPDATE `tbl_commentaire` SET `NoMembreViser` = NULL WHERE NoMembreViser = 0;"""
|
|
cr.execute(query_search)
|
|
query_search = """UPDATE `tbl_commentaire` SET `NoOffreServiceMembre` = NULL WHERE NoOffreServiceMembre = 0;"""
|
|
cr.execute(query_search)
|
|
query_search = """UPDATE `tbl_commentaire` SET `NoDemandeService` = NULL WHERE NoDemandeService = 0;"""
|
|
cr.execute(query_search)
|
|
query_search = """UPDATE `tbl_echange_service` SET `NoMembreVendeur` = NULL WHERE NoMembreVendeur = 0;"""
|
|
cr.execute(query_search)
|
|
query_search = """UPDATE `tbl_echange_service` SET `NoMembreAcheteur` = NULL WHERE NoMembreAcheteur = 0;"""
|
|
cr.execute(query_search)
|
|
query_search = """UPDATE `tbl_echange_service` SET `NoDemandeService` = NULL WHERE NoDemandeService = 0;"""
|
|
cr.execute(query_search)
|
|
query_search = """UPDATE `tbl_echange_service` SET `NoOffreServiceMembre` = NULL WHERE NoOffreServiceMembre = 0;"""
|
|
cr.execute(query_search)
|
|
query_search = """UPDATE `tbl_fournisseur_produit` SET `NoFournisseur` = NULL WHERE NoFournisseur = 0;"""
|
|
cr.execute(query_search)
|
|
query_search = (
|
|
"""UPDATE `tbl_log_acces` SET `NoMembre` = NULL WHERE NoMembre = 0;"""
|
|
)
|
|
cr.execute(query_search)
|
|
query_search = (
|
|
"""UPDATE `tbl_membre` SET `NoCartier` = NULL WHERE NoCartier = 0;"""
|
|
)
|
|
cr.execute(query_search)
|
|
query_search = (
|
|
"""UPDATE `tbl_membre` SET `NoCartier` = NULL WHERE NoCartier = 0;"""
|
|
)
|
|
cr.execute(query_search)
|
|
query_search = """UPDATE `tbl_membre` SET `NoTypeCommunication` = NULL WHERE NoTypeCommunication = 0;"""
|
|
cr.execute(query_search)
|
|
query_search = """UPDATE `tbl_membre` SET `NoOccupation` = NULL WHERE NoOccupation = 0;"""
|
|
cr.execute(query_search)
|
|
query_search = (
|
|
"""UPDATE `tbl_membre` SET `NoOrigine` = NULL WHERE NoOrigine = 0;"""
|
|
)
|
|
cr.execute(query_search)
|
|
query_search = """UPDATE `tbl_membre` SET `NoSituationMaison` = NULL WHERE NoSituationMaison = 0;"""
|
|
cr.execute(query_search)
|
|
query_search = """UPDATE `tbl_membre` SET `NoProvenance` = NULL WHERE NoProvenance = 0;"""
|
|
cr.execute(query_search)
|
|
query_search = """UPDATE `tbl_membre` SET `NoRevenuFamilial` = NULL WHERE NoRevenuFamilial = 0;"""
|
|
cr.execute(query_search)
|
|
query_search = """UPDATE `tbl_membre` SET `NoArrondissement` = NULL WHERE NoArrondissement = 0;"""
|
|
cr.execute(query_search)
|
|
query_search = (
|
|
"""UPDATE `tbl_membre` SET `NoTypeTel3` = NULL WHERE NoTypeTel3 = 0;"""
|
|
)
|
|
cr.execute(query_search)
|
|
query_search = """UPDATE `tbl_membre` SET `NoMembreConjoint` = NULL WHERE NoMembreConjoint = 0;"""
|
|
cr.execute(query_search)
|
|
query_search = """UPDATE `tbl_offre_service_membre` SET `NoCategorieSousCategorie` = NULL WHERE NoCategorieSousCategorie = 0;"""
|
|
cr.execute(query_search)
|
|
|
|
|
|
def add_foreign_key(cr):
|
|
print("Add foreign key")
|
|
try:
|
|
query_search = """
|
|
ALTER TABLE tbl_organization
|
|
DROP FOREIGN KEY foreign_key_tbl_organization_noarrondissement;
|
|
"""
|
|
cr.execute(query_search)
|
|
except Exception:
|
|
pass
|
|
|
|
query_search = """
|
|
ALTER TABLE tbl_organization
|
|
ADD CONSTRAINT foreign_key_tbl_organization_noarrondissement
|
|
FOREIGN KEY (NoArrondissement) REFERENCES tbl_arrondissement(NoArrondissement)
|
|
on update set null on delete set null;
|
|
"""
|
|
cr.execute(query_search)
|
|
# - ville
|
|
try:
|
|
query_search = """
|
|
ALTER TABLE tbl_organization
|
|
DROP FOREIGN KEY foreign_key_tbl_organization_noville;
|
|
"""
|
|
cr.execute(query_search)
|
|
except Exception:
|
|
pass
|
|
|
|
query_search = """
|
|
ALTER TABLE tbl_organization
|
|
ADD CONSTRAINT foreign_key_tbl_organization_noville
|
|
FOREIGN KEY (NoVille) REFERENCES tbl_ville(NoVille);
|
|
"""
|
|
cr.execute(query_search)
|
|
# - region
|
|
try:
|
|
query_search = """
|
|
ALTER TABLE tbl_organization
|
|
DROP FOREIGN KEY foreign_key_tbl_organization_noregion;
|
|
"""
|
|
cr.execute(query_search)
|
|
except Exception:
|
|
pass
|
|
|
|
query_search = """
|
|
ALTER TABLE tbl_organization
|
|
ADD CONSTRAINT foreign_key_tbl_organization_noregion
|
|
FOREIGN KEY (NoRegion) REFERENCES tbl_region(NoRegion);
|
|
"""
|
|
cr.execute(query_search)
|
|
# - cartier
|
|
try:
|
|
query_search = """
|
|
ALTER TABLE tbl_organization
|
|
DROP FOREIGN KEY foreign_key_tbl_organization_nocartier;
|
|
"""
|
|
cr.execute(query_search)
|
|
except Exception:
|
|
pass
|
|
|
|
query_search = """
|
|
ALTER TABLE tbl_organization
|
|
ADD CONSTRAINT foreign_key_tbl_organization_nocartier
|
|
FOREIGN KEY (NoCartier) REFERENCES tbl_cartier(NoCartier);
|
|
"""
|
|
cr.execute(query_search)
|
|
|
|
# Arrondissement
|
|
try:
|
|
query_search = """
|
|
ALTER TABLE tbl_arrondissement
|
|
DROP FOREIGN KEY foreign_key_tbl_ville_noville;
|
|
"""
|
|
cr.execute(query_search)
|
|
except Exception:
|
|
pass
|
|
|
|
query_search = """
|
|
ALTER TABLE tbl_arrondissement
|
|
ADD CONSTRAINT foreign_key_tbl_ville_noville
|
|
FOREIGN KEY (NoVille) REFERENCES tbl_ville(NoVille)
|
|
on update set null on delete set null;
|
|
"""
|
|
cr.execute(query_search)
|
|
|
|
# Cartier
|
|
try:
|
|
query_search = """
|
|
ALTER TABLE tbl_cartier
|
|
DROP FOREIGN KEY foreign_key_tbl_arrondissement_noarrondissement;
|
|
"""
|
|
cr.execute(query_search)
|
|
except Exception:
|
|
pass
|
|
|
|
query_search = """
|
|
ALTER TABLE tbl_cartier
|
|
ADD CONSTRAINT foreign_key_tbl_arrondissement_noarrondissement
|
|
FOREIGN KEY (NoArrondissement) REFERENCES tbl_arrondissement(NoArrondissement);
|
|
"""
|
|
cr.execute(query_search)
|
|
|
|
# Ville
|
|
try:
|
|
query_search = """
|
|
ALTER TABLE tbl_ville
|
|
DROP FOREIGN KEY foreign_key_tbl_region_noregion;
|
|
"""
|
|
cr.execute(query_search)
|
|
except Exception:
|
|
pass
|
|
|
|
query_search = """
|
|
ALTER TABLE tbl_ville
|
|
ADD CONSTRAINT foreign_key_tbl_region_noregion
|
|
FOREIGN KEY (NoRegion) REFERENCES tbl_region(NoRegion)
|
|
on update set null on delete set null;
|
|
"""
|
|
cr.execute(query_search)
|
|
|
|
# achat_ponctuel
|
|
# - tbl_membre
|
|
try:
|
|
query_search = """
|
|
ALTER TABLE tbl_achat_ponctuel
|
|
DROP FOREIGN KEY tbl_achat_ponctuel_tbl_membre_NoMembre_fk;
|
|
"""
|
|
cr.execute(query_search)
|
|
except Exception:
|
|
pass
|
|
|
|
query_search = """
|
|
alter table tbl_achat_ponctuel
|
|
add constraint tbl_achat_ponctuel_tbl_membre_NoMembre_fk
|
|
foreign key (NoMembre) references tbl_membre (NoMembre);
|
|
"""
|
|
cr.execute(query_search)
|
|
|
|
# - pointservice
|
|
# try:
|
|
# query_search = """
|
|
# ALTER TABLE tbl_achat_ponctuel
|
|
# DROP FOREIGN KEY tbl_achat_ponctuel_tbl_pointservice_nopointservice_fk;
|
|
# """
|
|
# cr.execute(query_search)
|
|
# except Exception:
|
|
# pass
|
|
#
|
|
# query_search = """
|
|
# alter table tbl_achat_ponctuel
|
|
# add constraint tbl_achat_ponctuel_tbl_pointservice_nopointservice_fk
|
|
# foreign key (NoPointService) references tbl_pointservice (NoPointService);
|
|
# """
|
|
# cr.execute(query_search)
|
|
|
|
# achat_ponctuel_produit
|
|
# - achat_ponctuel
|
|
try:
|
|
query_search = """
|
|
ALTER TABLE tbl_achat_ponctuel_produit
|
|
DROP FOREIGN KEY tbl_achat_ponctuel_produit_tbl_achat_ponctuel_NoAchatPonctuel_fk;
|
|
"""
|
|
cr.execute(query_search)
|
|
except Exception:
|
|
pass
|
|
|
|
query_search = """
|
|
alter table tbl_achat_ponctuel_produit
|
|
add constraint tbl_achat_ponctuel_produit_tbl_achat_ponctuel_NoAchatPonctuel_fk
|
|
foreign key (NoAchatPonctuel) references tbl_achat_ponctuel (NoAchatPonctuel);
|
|
"""
|
|
cr.execute(query_search)
|
|
|
|
# - fournisseur_produit
|
|
try:
|
|
query_search = """
|
|
ALTER TABLE tbl_achat_ponctuel_produit
|
|
DROP FOREIGN KEY tbl_achat_pp_tbl_fournisseur_produit_NoFournisseurProduit_fk;
|
|
"""
|
|
cr.execute(query_search)
|
|
except Exception:
|
|
pass
|
|
|
|
query_search = """
|
|
alter table tbl_achat_ponctuel_produit
|
|
add constraint tbl_achat_pp_tbl_fournisseur_produit_NoFournisseurProduit_fk
|
|
foreign key (NoFournisseurProduit) references tbl_fournisseur_produit (NoFournisseurProduit);
|
|
"""
|
|
cr.execute(query_search)
|
|
|
|
# sous_categorie
|
|
try:
|
|
query_search = """
|
|
ALTER TABLE tbl_sous_categorie
|
|
DROP FOREIGN KEY tbl_sous_categorie_tbl_categorie_NoCategorie_fk;
|
|
"""
|
|
cr.execute(query_search)
|
|
except Exception:
|
|
pass
|
|
|
|
query_search = """
|
|
alter table tbl_sous_categorie
|
|
add constraint tbl_sous_categorie_tbl_categorie_NoCategorie_fk
|
|
foreign key (NoCategorie) references tbl_categorie (NoCategorie);
|
|
"""
|
|
cr.execute(query_search)
|
|
|
|
# categorie_sous_categorie
|
|
# - categorie
|
|
# try:
|
|
# query_search = """
|
|
# ALTER TABLE tbl_categorie_sous_categorie
|
|
# DROP FOREIGN KEY tbl_categorie_sous_categorie_tbl_categorie_NoCategorie_fk;
|
|
# """
|
|
# cr.execute(query_search)
|
|
# except Exception:
|
|
# pass
|
|
#
|
|
# query_search = """
|
|
# alter table tbl_categorie_sous_categorie
|
|
# add constraint tbl_categorie_sous_categorie_tbl_categorie_NoCategorie_fk
|
|
# foreign key (NoCategorie) references tbl_categorie (NoCategorie);
|
|
# """
|
|
# cr.execute(query_search)
|
|
|
|
# - sous_categorie
|
|
try:
|
|
query_search = """
|
|
ALTER TABLE tbl_categorie_sous_categorie
|
|
DROP FOREIGN KEY tbl_csc_tbl_sous_categorie_NoSousCategorieId_fk;
|
|
"""
|
|
cr.execute(query_search)
|
|
except Exception:
|
|
pass
|
|
|
|
query_search = """
|
|
alter table tbl_categorie_sous_categorie
|
|
add constraint tbl_csc_tbl_sous_categorie_NoSousCategorieId_fk
|
|
foreign key (NoSousCategorieId) references tbl_sous_categorie (NoSousCategorieId);
|
|
"""
|
|
cr.execute(query_search)
|
|
|
|
# tbl_commande
|
|
try:
|
|
query_search = """
|
|
ALTER TABLE tbl_commande
|
|
DROP FOREIGN KEY tbl_commande_tbl_pointservice_NoPointService_fk;
|
|
"""
|
|
cr.execute(query_search)
|
|
except Exception:
|
|
pass
|
|
|
|
query_search = """
|
|
alter table tbl_commande
|
|
add constraint tbl_commande_tbl_pointservice_NoPointService_fk
|
|
foreign key (NoPointService) references tbl_pointservice (NoPointService);
|
|
"""
|
|
cr.execute(query_search)
|
|
|
|
# tbl_commande_membre
|
|
# - commande
|
|
try:
|
|
query_search = """
|
|
ALTER TABLE tbl_commande_membre
|
|
DROP FOREIGN KEY tbl_commande_membre_tbl_commande_NoCommande_fk;
|
|
"""
|
|
cr.execute(query_search)
|
|
except Exception:
|
|
pass
|
|
|
|
query_search = """
|
|
alter table tbl_commande_membre
|
|
add constraint tbl_commande_membre_tbl_commande_NoCommande_fk
|
|
foreign key (NoCommande) references tbl_commande (NoCommande);
|
|
"""
|
|
cr.execute(query_search)
|
|
|
|
# - membre
|
|
try:
|
|
query_search = """
|
|
ALTER TABLE tbl_commande_membre
|
|
DROP FOREIGN KEY tbl_commande_membre_tbl_membre_NoMembre_fk;
|
|
"""
|
|
cr.execute(query_search)
|
|
except Exception:
|
|
pass
|
|
|
|
query_search = """
|
|
alter table tbl_commande_membre
|
|
add constraint tbl_commande_membre_tbl_membre_NoMembre_fk
|
|
foreign key (NoMembre) references tbl_membre (NoMembre);
|
|
"""
|
|
cr.execute(query_search)
|
|
|
|
# - pointservice
|
|
# try:
|
|
# query_search = """
|
|
# ALTER TABLE tbl_commande_membre
|
|
# DROP FOREIGN KEY tbl_commande_membre_tbl_pointservice_nopointservice_fk;
|
|
# """
|
|
# cr.execute(query_search)
|
|
# except Exception:
|
|
# pass
|
|
#
|
|
# query_search = """
|
|
# alter table tbl_commande_membre
|
|
# add constraint tbl_commande_membre_tbl_pointservice_nopointservice_fk
|
|
# foreign key (NoPointService) references tbl_pointservice (NoPointService);
|
|
# """
|
|
# cr.execute(query_search)
|
|
|
|
# tbl_fournisseur_produit_commande
|
|
# - commande
|
|
try:
|
|
query_search = """
|
|
ALTER TABLE tbl_fournisseur_produit_commande
|
|
DROP FOREIGN KEY tbl_fournisseur_produit_commande_tbl_commande_NoCommande_fk;
|
|
"""
|
|
cr.execute(query_search)
|
|
except Exception:
|
|
pass
|
|
|
|
query_search = """
|
|
alter table tbl_fournisseur_produit_commande
|
|
add constraint tbl_fournisseur_produit_commande_tbl_commande_NoCommande_fk
|
|
foreign key (NoCommande) references tbl_commande (NoCommande);
|
|
"""
|
|
cr.execute(query_search)
|
|
|
|
# - fournisseur produit
|
|
try:
|
|
query_search = """
|
|
ALTER TABLE tbl_fournisseur_produit_commande
|
|
DROP FOREIGN KEY tbl_fpc_tbl_fournisseur_produit_NoFournisseurProduit_fk;
|
|
"""
|
|
cr.execute(query_search)
|
|
except Exception:
|
|
pass
|
|
|
|
query_search = """
|
|
alter table tbl_fournisseur_produit_commande
|
|
add constraint tbl_fpc_tbl_fournisseur_produit_NoFournisseurProduit_fk
|
|
foreign key (NoFournisseurProduit) references tbl_fournisseur_produit (NoFournisseurProduit);
|
|
"""
|
|
cr.execute(query_search)
|
|
|
|
# tbl_commande_membre_produit
|
|
# - commande membre
|
|
try:
|
|
query_search = """
|
|
ALTER TABLE tbl_commande_membre_produit
|
|
DROP FOREIGN KEY tbl_cmp_tbl_commande_membre_NoCommandeMembre_fk;
|
|
"""
|
|
cr.execute(query_search)
|
|
except Exception:
|
|
pass
|
|
|
|
query_search = """
|
|
alter table tbl_commande_membre_produit
|
|
add constraint tbl_cmp_tbl_commande_membre_NoCommandeMembre_fk
|
|
foreign key (NoCommandeMembre) references tbl_commande_membre (NoCommandeMembre);
|
|
"""
|
|
cr.execute(query_search)
|
|
|
|
# - fournisseur produit commande
|
|
try:
|
|
query_search = """
|
|
ALTER TABLE tbl_commande_membre_produit
|
|
DROP FOREIGN KEY tbl_cmp_tbl_fpc_NoFournisseurProduitCommande_fk;
|
|
"""
|
|
cr.execute(query_search)
|
|
except Exception:
|
|
pass
|
|
|
|
query_search = """
|
|
alter table tbl_commande_membre_produit
|
|
add constraint tbl_cmp_tbl_fpc_NoFournisseurProduitCommande_fk
|
|
foreign key (NoFournisseurProduitCommande) references tbl_fournisseur_produit_commande (NoFournisseurProduitCommande);
|
|
"""
|
|
cr.execute(query_search)
|
|
|
|
# tbl_commentaire
|
|
# - point service
|
|
try:
|
|
query_search = """
|
|
ALTER TABLE tbl_commentaire
|
|
DROP FOREIGN KEY tbl_commentaire_tbl_pointservice_NoPointService_fk;
|
|
"""
|
|
cr.execute(query_search)
|
|
except Exception:
|
|
pass
|
|
|
|
query_search = """
|
|
alter table tbl_commentaire
|
|
add constraint tbl_commentaire_tbl_pointservice_NoPointService_fk
|
|
foreign key (NoPointService) references tbl_pointservice (NoPointService);
|
|
"""
|
|
cr.execute(query_search)
|
|
|
|
# - membre source
|
|
try:
|
|
query_search = """
|
|
ALTER TABLE tbl_commentaire
|
|
DROP FOREIGN KEY tbl_commentaire_tbl_membre_NoMembre_fk;
|
|
"""
|
|
cr.execute(query_search)
|
|
except Exception:
|
|
pass
|
|
|
|
query_search = """
|
|
alter table tbl_commentaire
|
|
add constraint tbl_commentaire_tbl_membre_NoMembre_fk
|
|
foreign key (NoMembreSource) references tbl_membre (NoMembre);
|
|
"""
|
|
cr.execute(query_search)
|
|
|
|
# - membre visé
|
|
try:
|
|
query_search = """
|
|
ALTER TABLE tbl_commentaire
|
|
DROP FOREIGN KEY tbl_commentaire_tbl_membre_NoMembre_fk_2;
|
|
"""
|
|
cr.execute(query_search)
|
|
except Exception:
|
|
pass
|
|
|
|
query_search = """
|
|
alter table tbl_commentaire
|
|
add constraint tbl_commentaire_tbl_membre_NoMembre_fk_2
|
|
foreign key (NoMembreViser) references tbl_membre (NoMembre);
|
|
"""
|
|
cr.execute(query_search)
|
|
|
|
# - offre service membre
|
|
try:
|
|
query_search = """
|
|
ALTER TABLE tbl_commentaire
|
|
DROP FOREIGN KEY tbl_commentaire_tbl_offre_service_membre_NoOffreServiceMembre_fk;
|
|
"""
|
|
cr.execute(query_search)
|
|
except Exception:
|
|
pass
|
|
|
|
query_search = """
|
|
alter table tbl_commentaire
|
|
add constraint tbl_commentaire_tbl_offre_service_membre_NoOffreServiceMembre_fk
|
|
foreign key (NoOffreServiceMembre) references tbl_offre_service_membre (NoOffreServiceMembre);
|
|
"""
|
|
cr.execute(query_search)
|
|
|
|
# - demande service
|
|
try:
|
|
query_search = """
|
|
ALTER TABLE tbl_commentaire
|
|
DROP FOREIGN KEY tbl_commentaire_tbl_demande_service_NoDemandeService_fk;
|
|
"""
|
|
cr.execute(query_search)
|
|
except Exception:
|
|
pass
|
|
|
|
query_search = """
|
|
alter table tbl_commentaire
|
|
add constraint tbl_commentaire_tbl_demande_service_NoDemandeService_fk
|
|
foreign key (NoDemandeService) references tbl_demande_service (NoDemandeService);
|
|
"""
|
|
cr.execute(query_search)
|
|
|
|
# tbl_demande_service
|
|
# - membre
|
|
try:
|
|
query_search = """
|
|
ALTER TABLE tbl_demande_service
|
|
DROP FOREIGN KEY tbl_demande_service_tbl_membre_NoMembre_fk;
|
|
"""
|
|
cr.execute(query_search)
|
|
except Exception:
|
|
pass
|
|
|
|
query_search = """
|
|
alter table tbl_demande_service
|
|
add constraint tbl_demande_service_tbl_membre_NoMembre_fk
|
|
foreign key (NoMembre) references tbl_membre (NoMembre);
|
|
"""
|
|
cr.execute(query_search)
|
|
|
|
# - organization
|
|
try:
|
|
query_search = """
|
|
ALTER TABLE tbl_demande_service
|
|
DROP FOREIGN KEY tbl_demande_service_tbl_organization_NoOrganization_fk;
|
|
"""
|
|
cr.execute(query_search)
|
|
except Exception:
|
|
pass
|
|
|
|
query_search = """
|
|
alter table tbl_demande_service
|
|
add constraint tbl_demande_service_tbl_organization_NoOrganization_fk
|
|
foreign key (NoOrganization) references tbl_organization (NoOrganization);
|
|
"""
|
|
cr.execute(query_search)
|
|
|
|
# tbl_dmd_adhesion
|
|
# - organization
|
|
try:
|
|
query_search = """
|
|
ALTER TABLE tbl_dmd_adhesion
|
|
DROP FOREIGN KEY tbl_dmd_adhesion_tbl_organization_NoOrganization_fk;
|
|
"""
|
|
cr.execute(query_search)
|
|
except Exception:
|
|
pass
|
|
|
|
query_search = """
|
|
alter table tbl_dmd_adhesion
|
|
add constraint tbl_dmd_adhesion_tbl_organization_NoOrganization_fk
|
|
foreign key (NoOrganization) references tbl_organization (NoOrganization);
|
|
"""
|
|
cr.execute(query_search)
|
|
|
|
# tbl_droits_admin
|
|
# - membre
|
|
try:
|
|
query_search = """
|
|
ALTER TABLE tbl_droits_admin
|
|
DROP FOREIGN KEY tbl_droits_admin_tbl_membre_NoMembre_fk;
|
|
"""
|
|
cr.execute(query_search)
|
|
except Exception:
|
|
pass
|
|
|
|
query_search = """
|
|
alter table tbl_droits_admin
|
|
add constraint tbl_droits_admin_tbl_membre_NoMembre_fk
|
|
foreign key (NoMembre) references tbl_membre (NoMembre);
|
|
"""
|
|
cr.execute(query_search)
|
|
|
|
# tbl_echange_service
|
|
# - point service
|
|
try:
|
|
query_search = """
|
|
ALTER TABLE tbl_echange_service
|
|
DROP FOREIGN KEY tbl_echange_service_tbl_pointservice_NoPointService_fk;
|
|
"""
|
|
cr.execute(query_search)
|
|
except Exception:
|
|
pass
|
|
|
|
query_search = """
|
|
alter table tbl_echange_service
|
|
add constraint tbl_echange_service_tbl_pointservice_NoPointService_fk
|
|
foreign key (NoPointService) references tbl_pointservice (NoPointService);
|
|
"""
|
|
cr.execute(query_search)
|
|
|
|
# - membre vendeur
|
|
try:
|
|
query_search = """
|
|
ALTER TABLE tbl_echange_service
|
|
DROP FOREIGN KEY tbl_echange_service_vendeur_tbl_membre_NoMembre_fk;
|
|
"""
|
|
cr.execute(query_search)
|
|
except Exception:
|
|
pass
|
|
|
|
query_search = """
|
|
alter table tbl_echange_service
|
|
add constraint tbl_echange_service_vendeur_tbl_membre_NoMembre_fk
|
|
foreign key (NoMembreVendeur) references tbl_membre (NoMembre);
|
|
"""
|
|
cr.execute(query_search)
|
|
|
|
# - membre acheteur
|
|
try:
|
|
query_search = """
|
|
ALTER TABLE tbl_echange_service
|
|
DROP FOREIGN KEY tbl_echange_service_acheteur_tbl_membre_NoMembre_fk;
|
|
"""
|
|
cr.execute(query_search)
|
|
except Exception:
|
|
pass
|
|
|
|
query_search = """
|
|
alter table tbl_echange_service
|
|
add constraint tbl_echange_service_acheteur_tbl_membre_NoMembre_fk
|
|
foreign key (NoMembreAcheteur) references tbl_membre (NoMembre);
|
|
"""
|
|
cr.execute(query_search)
|
|
|
|
# - demande service
|
|
try:
|
|
query_search = """
|
|
ALTER TABLE tbl_echange_service
|
|
DROP FOREIGN KEY tbl_echange_service_tbl_demande_service_NoDemandeService_fk;
|
|
"""
|
|
cr.execute(query_search)
|
|
except Exception:
|
|
pass
|
|
|
|
query_search = """
|
|
alter table tbl_echange_service
|
|
add constraint tbl_echange_service_tbl_demande_service_NoDemandeService_fk
|
|
foreign key (NoDemandeService) references tbl_demande_service (NoDemandeService);
|
|
"""
|
|
cr.execute(query_search)
|
|
|
|
# - offre service membre
|
|
try:
|
|
query_search = """
|
|
ALTER TABLE tbl_echange_service
|
|
DROP FOREIGN KEY tbl_es_tbl_offre_service_membre_NoOffreServiceMembre_fk;
|
|
"""
|
|
cr.execute(query_search)
|
|
except Exception:
|
|
pass
|
|
|
|
query_search = """
|
|
alter table tbl_echange_service
|
|
add constraint tbl_es_tbl_offre_service_membre_NoOffreServiceMembre_fk
|
|
foreign key (NoOffreServiceMembre) references tbl_offre_service_membre (NoOffreServiceMembre);
|
|
"""
|
|
cr.execute(query_search)
|
|
|
|
# tbl_fichier
|
|
# - organization
|
|
try:
|
|
query_search = """
|
|
ALTER TABLE tbl_fichier
|
|
DROP FOREIGN KEY tbl_fichier_tbl_organization_NoOrganization_fk;
|
|
"""
|
|
cr.execute(query_search)
|
|
except Exception:
|
|
pass
|
|
|
|
query_search = """
|
|
alter table tbl_fichier
|
|
add constraint tbl_fichier_tbl_organization_NoOrganization_fk
|
|
foreign key (NoOrganization) references tbl_organization (NoOrganization);
|
|
"""
|
|
cr.execute(query_search)
|
|
|
|
# - type fichier
|
|
try:
|
|
query_search = """
|
|
ALTER TABLE tbl_fichier
|
|
DROP FOREIGN KEY tbl_fichier_tbl_type_fichier_Id_TypeFichier_fk;
|
|
"""
|
|
cr.execute(query_search)
|
|
except Exception:
|
|
pass
|
|
|
|
query_search = """
|
|
alter table tbl_fichier
|
|
add constraint tbl_fichier_tbl_type_fichier_Id_TypeFichier_fk
|
|
foreign key (Id_TypeFichier) references tbl_type_fichier (Id_TypeFichier);
|
|
"""
|
|
cr.execute(query_search)
|
|
|
|
# tbl_fournisseur
|
|
# - organization
|
|
try:
|
|
query_search = """
|
|
ALTER TABLE tbl_fournisseur
|
|
DROP FOREIGN KEY tbl_fournisseur_tbl_organization_NoOrganization_fk;
|
|
"""
|
|
cr.execute(query_search)
|
|
except Exception:
|
|
pass
|
|
|
|
query_search = """
|
|
alter table tbl_fournisseur
|
|
add constraint tbl_fournisseur_tbl_organization_NoOrganization_fk
|
|
foreign key (NoOrganization) references tbl_organization (NoOrganization);
|
|
"""
|
|
cr.execute(query_search)
|
|
|
|
# - region
|
|
try:
|
|
query_search = """
|
|
ALTER TABLE tbl_fournisseur
|
|
DROP FOREIGN KEY tbl_fournisseur_tbl_region_NoRegion_fk;
|
|
"""
|
|
cr.execute(query_search)
|
|
except Exception:
|
|
pass
|
|
|
|
query_search = """
|
|
alter table tbl_fournisseur
|
|
add constraint tbl_fournisseur_tbl_region_NoRegion_fk
|
|
foreign key (NoRegion) references tbl_region (NoRegion);
|
|
"""
|
|
cr.execute(query_search)
|
|
|
|
# - ville
|
|
try:
|
|
query_search = """
|
|
ALTER TABLE tbl_fournisseur
|
|
DROP FOREIGN KEY tbl_fournisseur_tbl_ville_NoVille_fk;
|
|
"""
|
|
cr.execute(query_search)
|
|
except Exception:
|
|
pass
|
|
|
|
query_search = """
|
|
alter table tbl_fournisseur
|
|
add constraint tbl_fournisseur_tbl_ville_NoVille_fk
|
|
foreign key (NoVille) references tbl_ville (NoVille);
|
|
"""
|
|
cr.execute(query_search)
|
|
|
|
# tbl_fournisseur_produit
|
|
# - fournisseur
|
|
try:
|
|
query_search = """
|
|
ALTER TABLE tbl_fournisseur_produit
|
|
DROP FOREIGN KEY tbl_fournisseur_produit_tbl_fournisseur_NoFournisseur_fk;
|
|
"""
|
|
cr.execute(query_search)
|
|
except Exception:
|
|
pass
|
|
|
|
query_search = """
|
|
alter table tbl_fournisseur_produit
|
|
add constraint tbl_fournisseur_produit_tbl_fournisseur_NoFournisseur_fk
|
|
foreign key (NoFournisseur) references tbl_fournisseur (NoFournisseur);
|
|
"""
|
|
cr.execute(query_search)
|
|
|
|
# - fournisseur_produit
|
|
try:
|
|
query_search = """
|
|
ALTER TABLE tbl_fournisseur_produit
|
|
DROP FOREIGN KEY tbl_fournisseur_produit_tbl_produit_NoProduit_fk;
|
|
"""
|
|
cr.execute(query_search)
|
|
except Exception:
|
|
pass
|
|
|
|
query_search = """
|
|
alter table tbl_fournisseur_produit
|
|
add constraint tbl_fournisseur_produit_tbl_produit_NoProduit_fk
|
|
foreign key (NoProduit) references tbl_produit (NoProduit);
|
|
"""
|
|
cr.execute(query_search)
|
|
|
|
# tbl_fournisseur_produit_point_service
|
|
# - fournisseur_produit
|
|
try:
|
|
query_search = """
|
|
ALTER TABLE tbl_fournisseur_produit_pointservice
|
|
DROP FOREIGN KEY tbl_fpps_tbl_fournisseur_produit_NoFournisseurProduit_fk;
|
|
"""
|
|
cr.execute(query_search)
|
|
except Exception:
|
|
pass
|
|
|
|
query_search = """
|
|
alter table tbl_fournisseur_produit_pointservice
|
|
add constraint tbl_fpps_tbl_fournisseur_produit_NoFournisseurProduit_fk
|
|
foreign key (NoFournisseurProduit) references tbl_fournisseur_produit (NoFournisseurProduit);
|
|
"""
|
|
cr.execute(query_search)
|
|
|
|
# - point service
|
|
try:
|
|
query_search = """
|
|
ALTER TABLE tbl_fournisseur_produit_pointservice
|
|
DROP FOREIGN KEY tbl_fpps_tbl_pointservice_NoPointService_fk;
|
|
"""
|
|
cr.execute(query_search)
|
|
except Exception:
|
|
pass
|
|
|
|
query_search = """
|
|
alter table tbl_fournisseur_produit_pointservice
|
|
add constraint tbl_fpps_tbl_pointservice_NoPointService_fk
|
|
foreign key (NoPointService) references tbl_pointservice (NoPointService);
|
|
"""
|
|
cr.execute(query_search)
|
|
|
|
# tbl_log_access
|
|
# - membre
|
|
try:
|
|
query_search = """
|
|
ALTER TABLE tbl_log_acces
|
|
DROP FOREIGN KEY tbl_log_acces_tbl_membre_NoMembre_fk;
|
|
"""
|
|
cr.execute(query_search)
|
|
except Exception:
|
|
pass
|
|
|
|
query_search = """
|
|
alter table tbl_log_acces
|
|
add constraint tbl_log_acces_tbl_membre_NoMembre_fk
|
|
foreign key (NoMembre) references tbl_membre (NoMembre);
|
|
"""
|
|
cr.execute(query_search)
|
|
|
|
# tbl_membre
|
|
# - cartier
|
|
try:
|
|
query_search = """
|
|
ALTER TABLE tbl_membre
|
|
DROP FOREIGN KEY tbl_membre_tbl_cartier_NoCartier_fk;
|
|
"""
|
|
cr.execute(query_search)
|
|
except Exception:
|
|
pass
|
|
|
|
query_search = """
|
|
alter table tbl_membre
|
|
add constraint tbl_membre_tbl_cartier_NoCartier_fk
|
|
foreign key (NoCartier) references tbl_cartier (NoCartier);
|
|
"""
|
|
cr.execute(query_search)
|
|
|
|
# - organization
|
|
try:
|
|
query_search = """
|
|
ALTER TABLE tbl_membre
|
|
DROP FOREIGN KEY tbl_membre_tbl_organization_NoOrganization_fk;
|
|
"""
|
|
cr.execute(query_search)
|
|
except Exception:
|
|
pass
|
|
|
|
query_search = """
|
|
alter table tbl_membre
|
|
add constraint tbl_membre_tbl_organization_NoOrganization_fk
|
|
foreign key (NoOrganization) references tbl_organization (NoOrganization);
|
|
"""
|
|
cr.execute(query_search)
|
|
|
|
# - point service
|
|
try:
|
|
query_search = """
|
|
ALTER TABLE tbl_membre
|
|
DROP FOREIGN KEY tbl_membre_tbl_pointservice_NoPointService_fk;
|
|
"""
|
|
cr.execute(query_search)
|
|
except Exception:
|
|
pass
|
|
|
|
query_search = """
|
|
alter table tbl_membre
|
|
add constraint tbl_membre_tbl_pointservice_NoPointService_fk
|
|
foreign key (NoPointService) references tbl_pointservice (NoPointService);
|
|
"""
|
|
cr.execute(query_search)
|
|
|
|
# - point service est admin (n'est plus un foreign key, mais une boolean)
|
|
# try:
|
|
# query_search = """
|
|
# ALTER TABLE tbl_membre
|
|
# DROP FOREIGN KEY tbl_membre_tbl_pointservice_NoPointService_fk_2;
|
|
# """
|
|
# cr.execute(query_search)
|
|
# except Exception:
|
|
# pass
|
|
#
|
|
# query_search = """
|
|
# alter table tbl_membre
|
|
# add constraint tbl_membre_tbl_pointservice_NoPointService_fk_2
|
|
# foreign key (EstUnPointService) references tbl_pointservice (NoPointService);
|
|
# """
|
|
# cr.execute(query_search)
|
|
|
|
# - type communication
|
|
try:
|
|
query_search = """
|
|
ALTER TABLE tbl_membre
|
|
DROP FOREIGN KEY tbl_membre_tbl_type_communication_NoTypeCommunication_fk;
|
|
"""
|
|
cr.execute(query_search)
|
|
except Exception:
|
|
pass
|
|
|
|
query_search = """
|
|
alter table tbl_membre
|
|
add constraint tbl_membre_tbl_type_communication_NoTypeCommunication_fk
|
|
foreign key (NoTypeCommunication) references tbl_type_communication (NoTypeCommunication);
|
|
"""
|
|
cr.execute(query_search)
|
|
|
|
# - occupation
|
|
try:
|
|
query_search = """
|
|
ALTER TABLE tbl_membre
|
|
DROP FOREIGN KEY tbl_membre_tbl_occupation_NoOccupation_fk;
|
|
"""
|
|
cr.execute(query_search)
|
|
except Exception:
|
|
pass
|
|
|
|
query_search = """
|
|
alter table tbl_membre
|
|
add constraint tbl_membre_tbl_occupation_NoOccupation_fk
|
|
foreign key (NoOccupation) references tbl_occupation (NoOccupation);
|
|
"""
|
|
cr.execute(query_search)
|
|
|
|
# - origine
|
|
try:
|
|
query_search = """
|
|
ALTER TABLE tbl_membre
|
|
DROP FOREIGN KEY tbl_membre_tbl_origine_NoOrigine_fk;
|
|
"""
|
|
cr.execute(query_search)
|
|
except Exception:
|
|
pass
|
|
|
|
query_search = """
|
|
alter table tbl_membre
|
|
add constraint tbl_membre_tbl_origine_NoOrigine_fk
|
|
foreign key (NoOrigine) references tbl_origine (NoOrigine);
|
|
"""
|
|
cr.execute(query_search)
|
|
|
|
# - situation maison
|
|
try:
|
|
query_search = """
|
|
ALTER TABLE tbl_membre
|
|
DROP FOREIGN KEY tbl_membre_tbl_situation_maison_NoSituationMaison_fk;
|
|
"""
|
|
cr.execute(query_search)
|
|
except Exception:
|
|
pass
|
|
|
|
query_search = """
|
|
alter table tbl_membre
|
|
add constraint tbl_membre_tbl_situation_maison_NoSituationMaison_fk
|
|
foreign key (NoSituationMaison) references tbl_situation_maison (NoSituationMaison);
|
|
"""
|
|
cr.execute(query_search)
|
|
|
|
# - provenance
|
|
try:
|
|
query_search = """
|
|
ALTER TABLE tbl_membre
|
|
DROP FOREIGN KEY tbl_membre_tbl_provenance_NoProvenance_fk;
|
|
"""
|
|
cr.execute(query_search)
|
|
except Exception:
|
|
pass
|
|
|
|
query_search = """
|
|
alter table tbl_membre
|
|
add constraint tbl_membre_tbl_provenance_NoProvenance_fk
|
|
foreign key (NoProvenance) references tbl_provenance (NoProvenance);
|
|
"""
|
|
cr.execute(query_search)
|
|
|
|
# - revenu familial
|
|
try:
|
|
query_search = """
|
|
ALTER TABLE tbl_membre
|
|
DROP FOREIGN KEY tbl_membre_tbl_revenu_familial_NoRevenuFamilial_fk;
|
|
"""
|
|
cr.execute(query_search)
|
|
except Exception:
|
|
pass
|
|
|
|
query_search = """
|
|
alter table tbl_membre
|
|
add constraint tbl_membre_tbl_revenu_familial_NoRevenuFamilial_fk
|
|
foreign key (NoRevenuFamilial) references tbl_revenu_familial (NoRevenuFamilial);
|
|
"""
|
|
cr.execute(query_search)
|
|
|
|
# - arrondissement
|
|
try:
|
|
query_search = """
|
|
ALTER TABLE tbl_membre
|
|
DROP FOREIGN KEY tbl_membre_tbl_arrondissement_NoArrondissement_fk;
|
|
"""
|
|
cr.execute(query_search)
|
|
except Exception:
|
|
pass
|
|
|
|
query_search = """
|
|
alter table tbl_membre
|
|
add constraint tbl_membre_tbl_arrondissement_NoArrondissement_fk
|
|
foreign key (NoArrondissement) references tbl_arrondissement (NoArrondissement);
|
|
"""
|
|
cr.execute(query_search)
|
|
|
|
# - ville
|
|
try:
|
|
query_search = """
|
|
ALTER TABLE tbl_membre
|
|
DROP FOREIGN KEY tbl_membre_tbl_ville_NoVille_fk;
|
|
"""
|
|
cr.execute(query_search)
|
|
except Exception:
|
|
pass
|
|
|
|
query_search = """
|
|
alter table tbl_membre
|
|
add constraint tbl_membre_tbl_ville_NoVille_fk
|
|
foreign key (NoVille) references tbl_ville (NoVille);
|
|
"""
|
|
cr.execute(query_search)
|
|
|
|
# - region
|
|
try:
|
|
query_search = """
|
|
ALTER TABLE tbl_membre
|
|
DROP FOREIGN KEY tbl_membre_tbl_region_NoRegion_fk;
|
|
"""
|
|
cr.execute(query_search)
|
|
except Exception:
|
|
pass
|
|
|
|
query_search = """
|
|
alter table tbl_membre
|
|
add constraint tbl_membre_tbl_region_NoRegion_fk
|
|
foreign key (NoRegion) references tbl_region (NoRegion);
|
|
"""
|
|
cr.execute(query_search)
|
|
|
|
# - NoMembreConjoint
|
|
# TODO enable when support looping
|
|
# try:
|
|
# query_search = """
|
|
# ALTER TABLE tbl_membre
|
|
# DROP FOREIGN KEY tbl_membre_tbl_membre_NoMembre_fk;
|
|
# """
|
|
# cr.execute(query_search)
|
|
# except Exception:
|
|
# pass
|
|
#
|
|
# query_search = """
|
|
# alter table tbl_membre
|
|
# add constraint tbl_membre_tbl_membre_NoMembre_fk
|
|
# foreign key (NoMembreConjoint) references tbl_membre (NoMembre);
|
|
# """
|
|
# cr.execute(query_search)
|
|
|
|
# - transfereDe
|
|
try:
|
|
query_search = """
|
|
ALTER TABLE tbl_membre
|
|
DROP FOREIGN KEY tbl_membre_tbl_organization_NoOrganization_fk_2;
|
|
"""
|
|
cr.execute(query_search)
|
|
except Exception:
|
|
pass
|
|
|
|
query_search = """
|
|
alter table tbl_membre
|
|
add constraint tbl_membre_tbl_organization_NoOrganization_fk_2
|
|
foreign key (TransfereDe) references tbl_organization (NoOrganization)
|
|
on update set null on delete set null;
|
|
"""
|
|
cr.execute(query_search)
|
|
|
|
# - notypetel1
|
|
try:
|
|
query_search = """
|
|
ALTER TABLE tbl_membre
|
|
DROP FOREIGN KEY tbl_membre_tbl_type_tel_NoTypeTel_fk;
|
|
"""
|
|
cr.execute(query_search)
|
|
except Exception:
|
|
pass
|
|
|
|
query_search = """
|
|
alter table tbl_membre
|
|
add constraint tbl_membre_tbl_type_tel_NoTypeTel_fk
|
|
foreign key (NoTypeTel1) references tbl_type_tel (NoTypeTel);
|
|
"""
|
|
cr.execute(query_search)
|
|
|
|
# - notypetel2
|
|
try:
|
|
query_search = """
|
|
ALTER TABLE tbl_membre
|
|
DROP FOREIGN KEY tbl_membre_tbl_type_tel_NoTypeTel_2_fk;
|
|
"""
|
|
cr.execute(query_search)
|
|
except Exception:
|
|
pass
|
|
|
|
query_search = """
|
|
alter table tbl_membre
|
|
add constraint tbl_membre_tbl_type_tel_NoTypeTel_2_fk
|
|
foreign key (NoTypeTel2) references tbl_type_tel (NoTypeTel);
|
|
"""
|
|
cr.execute(query_search)
|
|
|
|
# - notypetel3
|
|
try:
|
|
query_search = """
|
|
ALTER TABLE tbl_membre
|
|
DROP FOREIGN KEY tbl_membre_tbl_type_tel_NoTypeTel_3_fk;
|
|
"""
|
|
cr.execute(query_search)
|
|
except Exception:
|
|
pass
|
|
|
|
query_search = """
|
|
alter table tbl_membre
|
|
add constraint tbl_membre_tbl_type_tel_NoTypeTel_3_fk
|
|
foreign key (NoTypeTel3) references tbl_type_tel (NoTypeTel);
|
|
"""
|
|
cr.execute(query_search)
|
|
|
|
# tbl_mensualite
|
|
# - pret
|
|
try:
|
|
query_search = """
|
|
ALTER TABLE tbl_mensualite
|
|
DROP FOREIGN KEY tbl_mensualite_tbl_pret_Id_Pret_fk;
|
|
"""
|
|
cr.execute(query_search)
|
|
except Exception:
|
|
pass
|
|
|
|
query_search = """
|
|
alter table tbl_mensualite
|
|
add constraint tbl_mensualite_tbl_pret_Id_Pret_fk
|
|
foreign key (Id_Pret) references tbl_pret (Id_Pret);
|
|
"""
|
|
cr.execute(query_search)
|
|
|
|
# tbl_offre_service_membre
|
|
# - offre service membre
|
|
try:
|
|
query_search = """
|
|
ALTER TABLE tbl_offre_service_membre
|
|
DROP FOREIGN KEY tbl_offre_service_membre_tbl_membre_NoMembre_fk;
|
|
"""
|
|
cr.execute(query_search)
|
|
except Exception:
|
|
pass
|
|
|
|
query_search = """
|
|
alter table tbl_offre_service_membre
|
|
add constraint tbl_offre_service_membre_tbl_membre_NoMembre_fk
|
|
foreign key (NoMembre) references tbl_membre (NoMembre);
|
|
"""
|
|
cr.execute(query_search)
|
|
|
|
# - organization
|
|
try:
|
|
query_search = """
|
|
ALTER TABLE tbl_offre_service_membre
|
|
DROP FOREIGN KEY tbl_offre_service_membre_tbl_organization_NoOrganization_fk;
|
|
"""
|
|
cr.execute(query_search)
|
|
except Exception:
|
|
pass
|
|
|
|
query_search = """
|
|
alter table tbl_offre_service_membre
|
|
add constraint tbl_offre_service_membre_tbl_organization_NoOrganization_fk
|
|
foreign key (NoOrganization) references tbl_organization (NoOrganization);
|
|
"""
|
|
cr.execute(query_search)
|
|
|
|
# - categorie sous categorie
|
|
try:
|
|
query_search = """
|
|
ALTER TABLE tbl_offre_service_membre
|
|
DROP FOREIGN KEY tbl_osm_tbl_categorie_sous_categorie_NoCategorieSousCategorie_fk;
|
|
"""
|
|
cr.execute(query_search)
|
|
except Exception:
|
|
pass
|
|
|
|
query_search = """
|
|
alter table tbl_offre_service_membre
|
|
add constraint tbl_osm_tbl_categorie_sous_categorie_NoCategorieSousCategorie_fk
|
|
foreign key (NoCategorieSousCategorie) references tbl_categorie_sous_categorie (NoCategorieSousCategorie);
|
|
"""
|
|
cr.execute(query_search)
|
|
|
|
# tbl_pointservice
|
|
# - organization
|
|
try:
|
|
query_search = """
|
|
ALTER TABLE tbl_pointservice
|
|
DROP FOREIGN KEY tbl_pointservice_tbl_organization_NoOrganization_fk;
|
|
"""
|
|
cr.execute(query_search)
|
|
except Exception:
|
|
pass
|
|
|
|
query_search = """
|
|
alter table tbl_pointservice
|
|
add constraint tbl_pointservice_tbl_organization_NoOrganization_fk
|
|
foreign key (NoOrganization) references tbl_organization (NoOrganization);
|
|
"""
|
|
cr.execute(query_search)
|
|
|
|
# - membre
|
|
# Ignore this field, it's removed from inverse field
|
|
# try:
|
|
# query_search = """
|
|
# ALTER TABLE tbl_pointservice
|
|
# DROP FOREIGN KEY tbl_pointservice_tbl_membre_NoMembre_fk;
|
|
# """
|
|
# cr.execute(query_search)
|
|
# except Exception:
|
|
# pass
|
|
#
|
|
# query_search = """
|
|
# alter table tbl_pointservice
|
|
# add constraint tbl_pointservice_tbl_membre_NoMembre_fk
|
|
# foreign key (NoMembre) references tbl_membre (NoMembre);
|
|
# """
|
|
# cr.execute(query_search)
|
|
|
|
# tbl_pointservice_fournisseur
|
|
# - point service
|
|
try:
|
|
query_search = """
|
|
ALTER TABLE tbl_pointservice_fournisseur
|
|
DROP FOREIGN KEY tbl_pointservice_fournisseur_tbl_pointservice_NoPointService_fk;
|
|
"""
|
|
cr.execute(query_search)
|
|
except Exception:
|
|
pass
|
|
|
|
query_search = """
|
|
alter table tbl_pointservice_fournisseur
|
|
add constraint tbl_pointservice_fournisseur_tbl_pointservice_NoPointService_fk
|
|
foreign key (NoPointService) references tbl_pointservice (NoPointService);
|
|
"""
|
|
cr.execute(query_search)
|
|
|
|
# - fournisseur
|
|
try:
|
|
query_search = """
|
|
ALTER TABLE tbl_pointservice_fournisseur
|
|
DROP FOREIGN KEY tbl_pointservice_fournisseur_tbl_fournisseur_NoFournisseur_fk;
|
|
"""
|
|
cr.execute(query_search)
|
|
except Exception:
|
|
pass
|
|
|
|
query_search = """
|
|
alter table tbl_pointservice_fournisseur
|
|
add constraint tbl_pointservice_fournisseur_tbl_fournisseur_NoFournisseur_fk
|
|
foreign key (NoFournisseur) references tbl_fournisseur (NoFournisseur);
|
|
"""
|
|
cr.execute(query_search)
|
|
|
|
# tbl_pret
|
|
# - membre
|
|
try:
|
|
query_search = """
|
|
ALTER TABLE tbl_pret
|
|
DROP FOREIGN KEY tbl_pret_tbl_membre_NoMembre_fk;
|
|
"""
|
|
cr.execute(query_search)
|
|
except Exception:
|
|
pass
|
|
|
|
query_search = """
|
|
alter table tbl_pret
|
|
add constraint tbl_pret_tbl_membre_NoMembre_fk
|
|
foreign key (NoMembre) references tbl_membre (NoMembre);
|
|
"""
|
|
cr.execute(query_search)
|
|
|
|
# - membre intermediaire
|
|
try:
|
|
query_search = """
|
|
ALTER TABLE tbl_pret
|
|
DROP FOREIGN KEY tbl_pret_tbl_membre_NoMembre_fk_2;
|
|
"""
|
|
cr.execute(query_search)
|
|
except Exception:
|
|
pass
|
|
|
|
query_search = """
|
|
alter table tbl_pret
|
|
add constraint tbl_pret_tbl_membre_NoMembre_fk_2
|
|
foreign key (NoMembre_Intermediaire) references tbl_membre (NoMembre)
|
|
on update set null on delete set null;
|
|
"""
|
|
cr.execute(query_search)
|
|
|
|
# - membre responsable
|
|
try:
|
|
query_search = """
|
|
ALTER TABLE tbl_pret
|
|
DROP FOREIGN KEY tbl_pret_tbl_membre_NoMembre_fk_3;
|
|
"""
|
|
cr.execute(query_search)
|
|
except Exception:
|
|
pass
|
|
|
|
query_search = """
|
|
alter table tbl_pret
|
|
add constraint tbl_pret_tbl_membre_NoMembre_fk_3
|
|
foreign key (NoMembre_Responsable) references tbl_membre (NoMembre);
|
|
"""
|
|
cr.execute(query_search)
|
|
|
|
# tbl_produit
|
|
# - titre
|
|
try:
|
|
query_search = """
|
|
ALTER TABLE tbl_produit
|
|
DROP FOREIGN KEY tbl_produit_tbl_titre_NoTitre_fk;
|
|
"""
|
|
cr.execute(query_search)
|
|
except Exception:
|
|
pass
|
|
|
|
query_search = """
|
|
alter table tbl_produit
|
|
add constraint tbl_produit_tbl_titre_NoTitre_fk
|
|
foreign key (NoTitre) references tbl_titre (NoTitre);
|
|
"""
|
|
cr.execute(query_search)
|
|
|
|
# - organization
|
|
try:
|
|
query_search = """
|
|
ALTER TABLE tbl_produit
|
|
DROP FOREIGN KEY tbl_produit_tbl_organization_NoOrganization_fk;
|
|
"""
|
|
cr.execute(query_search)
|
|
except Exception:
|
|
pass
|
|
|
|
query_search = """
|
|
alter table tbl_produit
|
|
add constraint tbl_produit_tbl_organization_NoOrganization_fk
|
|
foreign key (NoOrganization) references tbl_organization (NoOrganization);
|
|
"""
|
|
cr.execute(query_search)
|
|
|
|
# tbl_type_compte
|
|
# - membre
|
|
try:
|
|
query_search = """
|
|
ALTER TABLE tbl_type_compte
|
|
DROP FOREIGN KEY tbl_type_compte_tbl_membre_NoMembre_fk;
|
|
"""
|
|
cr.execute(query_search)
|
|
except Exception:
|
|
pass
|
|
|
|
query_search = """
|
|
alter table tbl_type_compte
|
|
add constraint tbl_type_compte_tbl_membre_NoMembre_fk
|
|
foreign key (NoMembre) references tbl_membre (NoMembre);
|
|
"""
|
|
cr.execute(query_search)
|
|
|
|
# tbl_versement
|
|
# - mensualité
|
|
try:
|
|
query_search = """
|
|
ALTER TABLE tbl_versement
|
|
DROP FOREIGN KEY tbl_versement_tbl_mensualite_Id_Mensualite_fk;
|
|
"""
|
|
cr.execute(query_search)
|
|
except Exception:
|
|
pass
|
|
|
|
query_search = """
|
|
alter table tbl_versement
|
|
add constraint tbl_versement_tbl_mensualite_Id_Mensualite_fk
|
|
foreign key (Id_Mensualite) references tbl_mensualite (Id_Mensualite);
|
|
"""
|
|
cr.execute(query_search)
|
|
|
|
|
|
if __name__ == "__main__":
|
|
main()
|