Bonjour à toutes et à tous !
Je suis désolé mais je suis débutant et ai deux (trois?) problèmes sur un petit programme que je dois faire pour accéder à la formation que je souhaite. Le programme doit créer une liste dans une base de donnée (jusqu'ici tout va bien) mais à partir d'une fonction input python traditionnelle. De plus, si le nom de l'utilisateur figure déjà dans la base de donnée, le programme doit ajouter un 1 devant son prénom, puis un 2 si le prénom1 est utilisé etc. (ex : si Laurie figure dans la BDD, le programme doit attribuer le nom Laurie1, si Laurie1 existe ça sera Laurie2 etc. etc.). J'ai donc deux soucis :
1 / Faire en sorte que "INSERT INTO..." SQL accepte la réponse du Input (ce que je n'arrive pas à faire car la BDD enregistre le nom la fonction et non pas la réponse...)
2 / Comment créer une fonction python pour que celui-ci puisse savoir si l'utilisateur existe déjà dans la base de donnée ou pas ?
3 / Comment implémenter une variable en lui ajoutant 1 puis 2 puis 3...
Voilà ce que j'ai fais : je vous préviens c'est archi-faux mais c'est pour vous donner une idée de mon raisonnement et pour que vous voyez à peu près où j'en suis :
Pour ceux qui ont eu le courage de me lire bravo et merci d'avance d'aider le débutant que je suis !
Code : Sélectionner tout - Visualiser dans une fenêtre à part
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 import sqlite3 connection_db = sqlite3.connect("logins.db") cursor_db = connection_db.cursor() while user_generator: user_name = input("Créez votre identifiant") def alt_login(user_name): if new_user = user_name print("Votre identifiant existe déjà") new_user = user_name + 1 return False elif new_user2 = new_user print("Votre identifiant existe déjà") new_user2 = new_user += 1 return False continue if (alt_login(new_user)): print("Votre identifiant a bien été pris en compte") user_name = (cursor_db.lastrowid, alt_login) cursor_db.execute('INSERT INTO matrice_users VALUES(?,?)', user_name) connection_db.commit() print("Nouvel utilisateur ajouté") connection_db.close()
Partager