在线等

解决方案 »

  1.   

    我的印象中dbexpress不支持sqlserver的,只能连db2,infomix,甲骨文,mysql
      

  2.   

    在d7或者c6已经支持了。
    贡献一下我的代码吧:
    dbeConn:= TSQLConnection.Create(nil);
          dbeConn.Params.Clear;
          dbeConn.Params.Values['DriverName']:= 'MSSQL';
          dbeConn.Params.Values['HostName']:= FDataSource.address;
          dbeConn.Params.Values['Database']:= FDataSource.serviceName;
          dbeConn.Params.Values['USER_NAME']:= FDataSource.userName;
          dbeConn.Params.Values['Password']:= FDataSource.passWord;
          dbeConn.Params.Values['BlobSize']:= '-1';
          dbeConn.Params.Values['ErrorResourceFile']:= '';
          dbeConn.Params.Values['LocaleCode']:= '0000';
          dbeConn.Params.Values['MSSQL TransIsolation']:= 'ReadCommited';
          dbeConn.Params.Values['OS Authentication']:= 'False';
          randomize;
          dbeConn.ConnectionName:= 'hwsycmss' + Trim(IntToStr(random(99999)));
          dbeConn.DriverName:= 'MSSQL';
          dbeConn.GetDriverFunc:= 'getSQLDriverMSSQL';
          dbeConn.VendorLib:= 'oledb';
          dbeConn.LibraryName:= 'dbexpmss.dll';
          dbeConn.SQLHourGlass:= true;
          dbeConn.KeepConnection:= false;
          try
            dbeConn.Open;
            FActived:= true;
            Result:= true;
            err.SetMessage('MSSQL database Connected OK!',0);
            exit;
          except
            On E:Exception do
            begin
              err.SetMessage('MSSQL Database Connected Failed!' + E.Message,8003);
              FActived:= false;
              Result:= false;
              exit;
            end;
          end;
      

  3.   

    应该可以的吧
    在SQLConnection的EDit Connection Properties选择MSSQLConnection
    然后hostname 填写本地服务器名称或远程服务器ip,在databasename填写数据库名称。然后填上登陆名和密码就可以了
      

  4.   

    别说我没提醒你,现在不要用dbexpress,她太不成熟。
      

  5.   

    to babyboy(榆木疙瘩)
    你用过DBX吗?说这话。DBX支持MSSQL是通过OLEDB实现的,所以如果单纯为了使用MSSQL,用ADO可能性能好过DBX。
      

  6.   

    to Samland(samland) 
    提示以下错误:
    MSSQL DataBase connected Failed!SQL state:42000,SQL Error code:18456
      

  7.   

    所以如果单纯为了使用MSSQL,用ADO可能性能好过DBX。
    俺測過﹐dbexpress+datasnap在俺的數據庫上比ado+datasnap快30%以上﹐記錄<1000條的情況下
      

  8.   

    to xiong1979 :
    如果您的连接设置没有任何问题,但是还是不能正常运行,请下载dbExpress的补丁
      

  9.   

    我使用dbExpress开发过项目,对它的一些细节有一点点了解。如果您有疑问,可发消息,共同讨论。
      

  10.   

    to frogshero(三波萝):
    在某些方面,borland的数据方式确实速度不快。比如在程序中为数据库增加大量记录,我用Delphi写的程序慢于某些其他工具的
      

  11.   

    SQL state:42000,SQL Error code:18456
    表示你的用户没办法登陆。
    说明一点:dbExpress不允许空密码
      

  12.   

    to  Samland(samland) 
    需要升级你的DBexpress For MSSQL驱动了
      

  13.   

    密码不为空就可以了,
    我用DBexpress ,只是为了用它来还原DB,因为用ADO还原时,总是
    提示DB正在使用,要把所的与DB有关的连接统统关掉,有时还不行,
    connected:=false 和  connection.close 都不行。还是提示DB正在使用。
    我也找了很多相关帖子,还是没有解决。