使用Delphi怎么连接SQL数据库

来源:互联网 发布:java的后缀名 编辑:程序博客网 时间:2024/05/16 04:31
使用Delphi如何连接SQL数据库?
最好能说的详细点

------解决方案--------------------
使用ADO连接SQL Server 2000数据库
1.用ADO组件TADOQuery连接数据库
用TADOQuery组件连接数据库需要以下几个步骤:
(1)用TADOConnection组件连接数据源(在ConnectionString属性中连接数据库的字符串可以根据需要对其进行相应的省略)。
(2)用TADOQuery组件连接数据源,并在SQL属性中输入SQL语句。
(3)将TADOQuery组件的Active属性设为True。
在SQL属性中可以输入任何形式的SELECT语句,以及INSERT(添加)、UPDATE(修改)和DELETE(删除)语句。
下面利用TADOQuery组件来连接数据库“MR_SQL”,并显示“MR_SQL”数据库中“MR_ Student”表的数据,如图1所示。
操作步骤如下:
(1)运行Delphi,在窗体中添加TADOConnection、TADOQuery、TDataSource和TDBGrid组件。

图1 用ADO组件TADOQuery连接数据库
(2)主要程序代码如下:
将下面的代码写入窗体的OnShow(显示)事件中。
procedure TForm1.FormShow(Sender: TObject);
begin
ADOConnection1.ConnectionString := 'User ID=sa;Initial Catalog=MR_SQL;
Data Source=.;Use Procedure for Prepare=1;Auto Translate=True;Packet Size=4096;
Workstation ID=MRDEL'; //连接指定的数据库
ADOConnection1.LoginPrompt := False;
ADOConnection1.Connected := True;
ADOQuery1.Connection := ADOConnection1; //连接数据源
with ADOQuery1 do //用ADO组件连接数据表
begin
close;
SQL.Clear;
SQL.Add('Select * from MR_Student'); //使用SQL语句查询数据表中的内容
open;
end;
ADOQuery1.Active := True;
DataSource1.DataSet := ADOQuery1;
DBGrid1.DataSource := DataSource1;
end;
2.用ADO组件TADODataSet连接数据库
TADODataSet组件允许直接访问数据源、创建一组数据源记录以及查询结果记录集。TADODataSet组件可以从一个或多个表中取数据。如果只访问一个表,需要指定表的名称;如果要访问多个表,需要使用SQL语句。
TADODataSet组件与TADOQuery组件的最大区别在于可以使用TADODataSet组件上CommandText属性右边的 按钮,对指定数据库中的所有数据表进行可视化选择并创建SQL语句,如图2所示。

图2 CommandText属性的编辑器
注意:在使用CommandText属性的编辑器时,应先在ConnectionString属性中使用手动连接数据源。
下面利用TADODataSet组件来连接数据库“MR_SQL”,并显示“MR_SQL”数据库中“MR_Student”表的数据。
操作步骤如下:
(1)运行Delphi,在窗体中添加TTADODataSet、TDataSource和TDBGrid组件。
(2)主要程序代码如下:
将下面的代码写入窗体的OnShow(显示)事件中。
procedure TForm1.FormShow(Sender: TObject);
begin
ADODataSet1.ConnectionString := 'Provider=SQLOLEDB.1;Persist Security Info=False;
User ID=sa;Initial Catalog=MR_SQL;Data Source=.'; //连接数据源
ADODataSet1.CommandText := 'select * from MR_Student'; //用SQL语句查询数据表信息
ADODataSet1.Active := True; //运行该组件
end;
3.用ADO组件TADOTable连接数据库
TADOTable(也称为ADO数据表)组件是一个数据集组件,封装了一个可访问ADO的数据表,使用TADOTable组件可访问单个数据表中的数据,它可以直接访问数据表中的每条记录,也可以用Filter属性根据限定范围或条件对数据表中的信息进行过滤。
TADOTable组件也可以通过TableName属性对数据库中的数据表进行可视化选择。
注意:在用TableName属性进行可视化选择时,应先在ConnectionString属性中使用手动连接数据源。
下面是利用TADOTable组件来连接数据库“MR_SQL”,并显示“MR_SQL”数据库中“MR_Student”表的数据。
操作步骤如下:
(1)运行Delphi,在窗体中添加TADOTable、TDataSource和TDBGrid组件。
(2)主要程序代码如下:
将下面的代码写入窗体的OnShow(显示)事件中。
procedure TForm1.FormShow(Sender: TObject);
begin
ADOTable1.ConnectionString := 'Provider=SQLOLEDB.1;Persist Security Info=False;
User ID=sa;Initial Catalog=MR_SQL;Data Source=.';
ADOTable1.TableName := 'MR_Student';
ADOTable1.Filtered := True;
end;
4.用ADO组件TADOCommand连接数据库
TADOCommand组件主要用来对数据源执行指定的命令,比如SQL语句,表和存储过程的名称,对数据进行添加、修改、删除等操作。虽然其他ADO组体也能执行以上操作,但需要使用Command本身的属性和方法来控制数据源,使用TADOCommand组件就方便得多。
在用TADOCommand组件对数据进行编辑时,应在Parameters属性中创建变量,这些变量应与编辑字段的类型相一致,如果在SQL语句后面没有WHERE子句,则对整个表进行编辑。
下面利用TADOCommand组件来连接数据库“MR_SQL”,并对“MR_Student”表中的“数学”字段进行修改。
操作步骤如下:
(1)运行Delphi,在窗体中添加TADOTable、TEdit和TButton组件。
(2)主要程序代码如下:
在Button1按钮的单击事件中写入以下代码。
procedure TForm1.Button1Click(Sender: TObject);
begin
ADOCommand1.ConnectionString := 'Provider=SQLOLEDB.1;Persist Security Info=False;
User ID=sa;Initial Catalog=MR_SQL;Data Source=.'; //连接数据源
//用SQL语句UPDATE修改MR_Student表中第一条记录的“数学”字段信息
ADOCommand1.CommandText:='UPDATE MR_Student SET 数学 = 数学 + :aa where 编号=1';
//在TADOCommand组件中设置变量,并通过该变量获取修改值
ADOCommand1.Parameters.ParamByName('aa').Value := StrtOInt(edit1.Text);
ADOCommand1.Execute; //执行修改操作
end;
原创粉丝点击