我尝试在运行时使用DBExpress连接SQL Server 2008和 Delphi 2009,但它不工作。当我在设计时设置所有属性时,它工作正常,但在运行时,我得到“未知驱动程序:mssql”。代码如下:
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;
我已经将dbxmssiderdll包含在与我的应用程序相同的目录中,但无济于事。如有任何帮助,将不胜感激。
标记
2条答案
按热度按时间gg58donl1#
试试看:
结束;
base.ini:
有关详细信息,请参见http://docwiki.embarcadero.com/RADStudio/en/Setting_Up_TSQLConnection
xn1cxnb42#
我在 Delphi 2007和MSSQL中遇到过这种情况。您可能需要更改DLL名称,以匹配您的Delphi/DBExpress版本中的MSSQL驱动程序版本。另外,我使用的是SQL身份验证(又名SSPI),而不是SQL用户名和密码: