delphi程序中动态创建、删除视图
视图
1.创建、删除视图
用SQL语句CREATE VIEW可以创建视图,在对表创建视图时,该表必须存在于数据库中。删除视图则用DROP VIEW语句。
下面实现对视图的创建和删除。
操作步骤如下:
(1)运行Delphi,在窗体中添加TADOConnection、TADOQuery、TDataSource、TButton、TEdit和TDBGrid等组件。
(2)主要程序代码如下:
对指定数据库中的任意表创建视图。
with ADOquery1 do
begin
Close;
SQL.clear;
SQL.add('create View '+Edit1.Text);
SQl.Add('as ');
SQL.Add('Select * from '+ComboBox1.Text);
ExecSQL;
SQL.Clear;
SQL.Add('Select * from '+Edit1.Text);
Open;
end;
删除已创建的视图。
with ADOquery1 do
begin
Close;
SQL.clear;
SQL.add('Drop view '+Edit1.Text);
ExecSQL;
end;
2.多表合并视图
多表合并视图是用SQL语句INNER JOIN将多个表合并在一起,并以视图的形式进行创建。
下面用多表合并的方式创建视图。
操作步骤如下:
(1)运行Delphi,在窗体中添加TADOConnection、TADOQuery、TDataSource、TButton、TLabel和TDBGrid等组件。
(2)主要程序代码如下:
with ADOQuery1 do
begin
close;
SQL.Clear;
SQL.Add('CREATE VIEW VIEW_Name AS select k.学生编号,k.学生姓名,j.外语FROM tb_stu AS k INNER JOIN tb_ mark AS j ON k.学生编号 = j.学生编号 WHERE (((k.学生编号)=[j].[学生编号]))');
EXECSQL;
close;
SQL.Clear;
SQL.Add('select * from VIEW_Name');
open;
end;