2Pascal-新时代的Pascal

标题: FDQuery连接数据库,使用提示占线错误,如何用 FD 连接 MSSQL [打印本页]

作者: wuxi15    时间: 2015-8-7 11:55
标题: FDQuery连接数据库,使用提示占线错误,如何用 FD 连接 MSSQL
[attach]877[/attach]
用的是Xe8.,连接SQL数据库2008提示这个错误,2000的版本不会


作者: wang_80919    时间: 2015-8-7 11:57
    FDConnectionMsSql.Close;
    FDConnectionMsSql.LoginPrompt := False;
    FDConnectionMsSql.Params.Values['Server'] := ServerName;
    FDConnectionMsSql.Params.Values['User_Name'] := UserName;
    FDConnectionMsSql.Params.Values['Password'] := PWD;
    FDConnectionMsSql.Params.Values['Database'] := DatabaseName;
    FDConnectionMsSql.Params.Values['OSAuthent'] := 'No';

    //使用特定的 Driver 才能获取 ODBCDriver 的值。
    FDConnectionMsSql.Params.Values['DriverID'] := 'MSSQLMain';

    FDConnectionMsSql.Open;

    TempStr := TFDPhysODBCDriverBase(FDPhysMSSQLDriverLinkMain.DriverIntf).ODBCDriver;

    if TempStr.Contains('SQL Server Native Client') then
    begin
      FDMSSQLFechModeUseAll := False;
    end;

    if FDMSSQLFechModeUseAll then
    begin
      //ODBCDriver := 'SQL Server' 不支持 (连接到控件上的)  FetchOptions.Mode := TFDFetchMode.fmOnDemand;
      FDQueryMSSQLIN.FetchOptions.Mode := TFDFetchMode.fmAll;
    end
    else
    begin
      FDQueryMSSQLIN.FetchOptions.Mode := TFDFetchMode.fmOnDemand;
    end;
作者: wang_80919    时间: 2015-8-7 11:57
关键是 要 放一个 FDPhysMSSQLDriverLink
这个控件的 DriverID 设置成自定义的。
ODBCDriver 不要填值。

上面的代码,主要是解决楼主的问题。

前几行是 连接 MSSQL 的基本代码。

作者: wang_80919    时间: 2017-4-28 17:57
FireDAC 支持 MSSql 2000 的问题,例如 不支持或连接占线或hstmt
http://www.2pascal.com/forum.php ... =2734&fromuid=4
(出处: 2Pascal-新时代的Pascal)

作者: laimama    时间: 2019-1-31 10:58
前几天才上FD的车,结果今天就遇到了问题,记得在哪里看到过,果然在这,谢谢wang_80919




欢迎光临 2Pascal-新时代的Pascal (http://www.2pascal.com/) Powered by Discuz! X3