请问在Delphi中不通过ODBC数据源,如何与SQL SERVER连接.

解决方案 »

  1.   

    ADO------------------
    你是用Delphi 5.0以上的版本吧
      

  2.   

    同上,看看我的连接代码吧.
    这是连接SQL2000的unit Unit1;interfaceuses
      Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
      Dialogs, StdCtrls, DB, ADODB;type
      TForm1 = class(TForm)
        ADOConnection1: TADOConnection;
        labelededit1: TEdit;
        labelededit2: TEdit;
        Button1: TButton;
        Button2: TButton;
        Label1: TLabel;
        Label2: TLabel;
        Edit1: TEdit;
        Label3: TLabel;
        Edit2: TEdit;
        Label4: TLabel;
        procedure Button1Click(Sender: TObject);
        procedure Button2Click(Sender: TObject);
      private
        { Private declarations }
      public
        { Public declarations }
      end;var
      Form1: TForm1;implementation{$R *.dfm}procedure TForm1.Button1Click(Sender: TObject);
    var
    str:string;
    begin
    if (labelededit1.Text<>'') and (labelededit2.Text<>'') then
    begin
    //连接远程服务器:str:='Provider=SQLOLEDB.1'+';'+'Persist Security Info=False'+';'+'User ID='+LabeledEdit1.Text+';'+'Password='+labelededit2.text+';'+'Initial Catalog=数据库名称'+';'+'Data Source=服务器名称';str:='Provider=SQLOLEDB.1'+';'+'Persist Security Info=False'+';'+'User ID='+LabeledEdit1.Text+';'+'Password='+labelededit2.text+';'+'Initial Catalog='+edit2.Text+';'+'Data Source='+EDIT1.Text;ADOConnection1.ConnectionString:=str;ADOConnection1.Open;labelededit2.Text:='';
    Button1.Enabled:=false;end;end;procedure TForm1.Button2Click(Sender: TObject);
    begin
    ADOConnection1.Close;Button1.Enabled:=true;end;end.
    下一篇::
    用ADOConnection连接到具体数据库: procedure Tloginmain.Button1Click(Sender: TObject);varstr:string;beginif (labelededit1.Text<>'') and (labelededit1.Text<>'') thenbegin//连接远程服务器:str:='Provider=SQLOLEDB.1'+';'+'Persist Security Info=False'+';'+'User ID='+LabeledEdit1.Text+';'+'Password='+labelededit2.text+';'+'Initial Catalog=数据库名称'+';'+'Data Source=服务器名称';str:='Provider=SQLOLEDB.1'+';'+'Persist Security Info=False'+';'+'User ID='+LabeledEdit1.Text+';'+'Password='+labelededit2.text+';'+'Initial Catalog=testdase';ADOConnection1.ConnectionString:=str;ADOConnection1.Open;labelededit2.Text:='';end;end;断开数据库:
    procedure Tloginmain.Button2Click(Sender: TObject);beginADOConnection1.Close;Button1.Enabled:=true; end;
    具体连接到数据库的某个表可以用:ADODataSet将ADODataSet的Connection属性设置为:ADOConnection将ADODataSet的CommandType属性设置为:cmdTableif not loginmain.ADODataSet1.Active thenbeginADODataSet1.CommandText:='worker_information';//worker_information为表名ADODataSet1.Open;end;