ADO数据库连接示例
ADO数据库连接示例
类 别:数据库
开发环境:delphi6.0 + sql server2000
unit adodbpas;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls, DB, ADODB, Grids, DBGrids, Buttons, ComCtrls;
type
TForm1 = class(TForm)
Label1: TLabel;
Edit1: TEdit;
BitBtn1: TBitBtn;
DBGrid1: TDBGrid;
OpenDialog1: TOpenDialog;
ListBox1: TListBox;
Label2: TLabel;
ADOConnection1: TADOConnection;
ADOTable1: TADOTable;
DataSource1: TDataSource;
SpeedButton1: TSpeedButton;
StatusBar1: TStatusBar;
Label3: TLabel;
Edit2: TEdit;
procedure BitBtn1Click(Sender: TObject);
procedure FormCreate(Sender: TObject);
procedure ListBox1Click(Sender: TObject);
procedure SpeedButton1Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form1: TForm1;
implementation
{$R *.dfm}
procedure
TForm1.BitBtn1Click(Sender: TObject);
var szname,szext:string;
var Iext:integer;
begin
if OpenDialog1.Execute then
begin
szname:=ExtractFileName(opendialog1.FileName);
szext:=ExtractFileExt(opendialog1.FileName)
end;
edit1.text:=OpenDialog1.FileName;
Iext:= length(szname) - length(szext);
szname:=copy(szname,0,Iext);
edit2.Text:=szname; //获得没有扩展名的文件名
//显示数据库中的数据表
with ADOConnection1 do
begin
if Connected then Close;
ConnectionString:='Provider=SQLOLEDB.1;Password=yhjvc;Persist Security Info=True;User ID=sa;Initial Catalog='+szname+';Data Source=YHJ\YHJDB;Use Procedure for Prepare=1;Auto Translate=True;Packet Size=4096;Workstation ID=YHJ;Use Encryption for Data=False;Tag with column collation when possible=False';
Open;
GetTableNames(listbox1.Items,true);
end;
end;
procedure
TForm1.FormCreate(Sender: TObject);
begin
// ADOConnection1.GetTableNames(ListBox1.Items);
end;
procedure TForm1.ListBox1Click(Sender: TObject);
begin
if ADOTable1.Active then adotable1.Close;
adotable1.TableName:=ListBox1.Items.Strings[ ListBox1.ItemIndex];//根据列表框中的选者显示数据库中的表
adotable1.Open;
end;
procedure
TForm1.SpeedButton1Click(Sender: TObject);
begin
close;
end;
end.
|