三、应用实例介绍
以下给出的程序段功能为:在前台Delphi环境下调用存储过程,在服务器由表dbo.all选出符合用户身份的记录生成表dbo.today;由触发器删除部分不合日期要求的记录;再从前台用批量记录移动把dbo.today的内容下载的本地LOCALDATA数据库上data.dbf表。
{在服务器的MYDATA数据库上创建存储过程my_store_prol:}
CREATE PROCDURE my_store_prol @secu_id int AS SELECT*FROM all WHERE my_table1.no1<=@secu_id GO {在MYDATA数据库的表dbo.today上创建触发器:} CREATE TRLGGER add_no ON today FOR INSERT AS DELETE*FORM today WHERE riqi GO
|
{在前台程序中执行存储过程my_store_prol:}
Databasel.AliasName:='MYDATA'; Databasel.DatabaseName;='my_database'; Database1.connected;=True; SourceTable1.DatabaseName;='my_database'; SourceTable1.TableName='dbo.today'; SourceTable1.Active;=True; StoredProc1.DatabaseName;='My_database'; StoredProc1.StoredProcName:='my_proc'; StoredProc1.Params.Clear; StoredProc1.Params.CreateParam(ftInteger,'secu_id',ptInput); StoredProc1.Prepare; StoredProc1.ExecProc;
|
{在前台程序中下载dbo.today的内容到data.dbf表:}
Database2.AliasName:='LOCALDATA'; Database2.DatabaseName:='local_data'; Database2.connectde:=True; DestinTable1.DatabaseName:='local_data'; DestinTable1.TableName:='data.dbf; DestinTable1.Active:=True; BatchMovel.Mode:=batAppend; BatchMovel.RecordCount:=0 BatchMovel.Source:=SourceTable1; BatchMovel.Destination:=DestinTable1; BatchMovel.Execute;
|
|