我用的是以下语句:
ADOConnection_login.Connected:=false;
  ADOConnection_login.ConnectionString :=
  'Provider=SQLOLEDB.1;Persist Security  Info=False;User  ID=sa;Initial   Catalog=test;Data   Source=127.0.0.1';
  try
  ADOConnection_login.Connected:=true;
  except
  showmessage('数据库连接错误');
  end;请问哪里出了问题?
需要加上密码吗?如何加?

解决方案 »

  1.   

    应该是 connectstring未提供正确吧
      

  2.   

    用ADOConnection直接连接一下相应的服务器,然后再把connectstring拷贝出来看看哪些需要改动不是好么
      

  3.   

    楼上的正确。
    你先直接手动使用adoconnection,选buid...,连接正常后,你再讲他的连接字符串拷贝出来,在看看什么地方错了。。研究好后,可以将配置信息写到ini文件中读取链接SQLserver
      

  4.   


    动态存储ini的读写设置 注意前面uses加上 Inifiles 
    下面的代码以sqlserver为例,DM1为数据窗体,DB1为adoconnection var
      myini:tinifile;
      s_s1,s_s2,s_s3:string;
    begin
          myini:=tinifile.Create('.\conn.ini');
          s_s1:=myini.ReadString('Host','Server','');//连接服务器名称或ip地址
          s_s2:=myini.ReadString('Host','Username','');//数据库用户名
          s_s3:=myini.ReadString('Host','Password','');//数据库用户名的密码
          myini.Free;
      try
          DM1.DB1.connected:=false;
          //动态设置连接字符串
          DM1.DB1.connectionstring:='Provider=SQLOLEDB.1;Password='+s_s3+';Persist Security Info=True;User ID='+s_s2+';Initial Catalog=master;Data Source='+s_s1+';Locale Identifier=2052;Connect Timeout=15;Use Procedure for Prepare=1;Auto Translate=True;Packet Size=4096;Workstation ID='+s_s1;
          DM1.DB1.LoginPrompt:=false;
          DM1.DB1.connected:=true;
      except
          messageboxex(handle,'连接服务器失败!请检查设置.','提示',MB_OK+MB_ICONINFORMATION,0);
      end;
    end;
    conn.ini文件的内容 
    [Host] 
    Server=. 
    Username=sa 
    Password= 
    dabase=MyDB这样的帖子太多,楼主可以翻翻以前的帖子以及解答