J'essaye de me connecter à l'exécution avec SQL Server 2008 avec Delphi 2009 en utilisant DBExpress, ça ne marche pas. Lorsque je définis toutes les propriétés au moment du design, cela fonctionne très bien, mais à RunTime, je reçois "unknown driver: mssql". Voici le code:
DBExpress connectant SQL 2008 à l'exécution avec Delphi 2009
scnConexao := TSQLConnection.Create(nil);
scnConexao.DriverName := 'MSSQL';
scnConexao.ConnectionName := 'MSSQLConnection';
scnConexao.GetDriverFunc := 'getSQLDriverMSSQL';
scnConexao.LibraryName := 'dbxmss.dll';
scnConexao.VendorLib := 'oledb';
scnConexao.LoginPrompt := False;
scnConexao.Params.Add('SchemaOverride=sa.dbo');
scnConexao.Params.Add('HostName=DESKTOP');
scnConexao.Params.Add('DataBase=DBNAME');
scnConexao.Params.Add('OS Authentication=False');
scnConexao.Params.Add('User_Name=UserName');
scnConexao.Params.Add('Password=Password');
scnConexao.Params.Add('MSSQL TransIsolation=ReadCommited');
scnConexao.Open;
J'ai inclus le dbxmss.dll dans le même répertoire que mon application, mais en vain. Toute aide serait grandement appréciée.
TKS
On dirait que personne ne le remarqua. J'ai ajouté la balise "delphi" plus générale afin d'obtenir plus de vues. –
J'ai lu à quelques reprises que ce problème a été résolu en incluant l'unité pertinente dans la clause uses, je pense que "DBXMsSql" dans ce cas. BTW, AFAIK changer le nom de la connexion réinitialise le nom du pilote, donc il ne sert à rien de définir le nom du pilote à l'avance. –