J'ai suivi à la lettre le tutoriel "Attaquer une base Firebird avec Delphi version personnelle".
J'ai adapté ce principe pour une base de donnée Interbase version 6.
La connection se passe bien, mais quand je teste sur un utilisateur qui n'existe pas, il accepte la connection, malgré tout. Pouvez vous m'indiquer ou ça pèche?
Voici le code python :Et le code Delphi :
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 class TFBConnection: def __init__(self, host='ERIC', database='C:\WINDOWS\SYSTEM32\BASE 3D', \ user='ERIC', password='AUDR95'): self.database=database self.host=host self.user=user self.password=password ## Created: ??? - Updated: 2005.07.28 def Connect(self): self.con = kinterbasdb.connect(host=self.host, database=self.database, user=self.user, password=self.password) ## Created: ??? - Updated: 2005.07.28 def Commit(self): self.con.commit() ## Created: ??? - Updated: 2005.07.28 def Cursor(self): return TFBCursor(self) ## Created: ??? - Updated: 2005.07.28 def Rollback(self): self.con.rollback() ## Created: ??? - Updated: 2005.07.28 def Close(self): self.con.close() ## Created: ??? - Updated: 2005.07.28 def DropDatabase(self): self.con.drop_database() ## Created: ??? - Updated: 2005.07.28 def CreateDatabase(self): self.con = kinterbasdb.create_database( "create database '"+self.database+"' user '"+self.user+"' password '"+self.password+"'")Merci d'avance.
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 Begin PyString:=TStringList.Create; PyString.LoadFromFile('c:\Dossiers Eric\Développement\Base 3D Delphi\FBBase.Py'); PELogin.ExecStrings(PyString); PyBase:=MainModule.TFBConnection(); PyBase.User:=ELogin.Text; PyBase.Password:=EMotPasse.Text; PyString.Free; Try PyBase.Connect(); FLogin.DestroyWindowHandle; Except MessageDlg('Login ou mot de passe incorrect!',mterror,[mbOk],0); ELogin.Text:=''; EMotPasse.Text:=''; ELogin.SetFocus; End; End;
Partager