关于事务的问题!!在线等待!1 有会的话可不可以说一下? 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 unit Unit1;interfaceuses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, dbcgrids, ExtCtrls, DBCtrls, DB, ADODB, Grids, DBGrids, StdCtrls, Mask;type TForm1 = class(TForm) ADOConnection1: TADOConnection; ADOQuery1: TADOQuery; DataSource1: TDataSource; ADOQuery2: TADOQuery; DBNavigator1: TDBNavigator; DBCtrlGrid1: TDBCtrlGrid; DataSource2: TDataSource; ADOQuery1SupplierID: TAutoIncField; ADOQuery1CompanyName: TWideStringField; ADOQuery1ContactName: TWideStringField; ADOQuery1ContactTitle: TWideStringField; ADOQuery1Address: TWideStringField; ADOQuery1City: TWideStringField; ADOQuery1Region: TWideStringField; ADOQuery1PostalCode: TWideStringField; ADOQuery1Country: TWideStringField; ADOQuery1Phone: TWideStringField; ADOQuery1Fax: TWideStringField; ADOQuery1HomePage: TMemoField; Label1: TLabel; DBEdit1: TDBEdit; Label2: TLabel; DBEdit2: TDBEdit; Label3: TLabel; DBEdit3: TDBEdit; DBNavigator2: TDBNavigator; DBGrid1: TDBGrid; ADOQuery3: TADOQuery; ADOQuery2CATEGORYNAME: TStringField; ADOQuery2ProductID: TAutoIncField; ADOQuery2ProductName: TWideStringField; ADOQuery2SupplierID: TIntegerField; ADOQuery2CategoryID: TIntegerField; ADOQuery2QuantityPerUnit: TWideStringField; ADOQuery2UnitPrice: TBCDField; ADOQuery2UnitsInStock: TSmallintField; ADOQuery2UnitsOnOrder: TSmallintField; ADOQuery2ReorderLevel: TSmallintField; ADOQuery2Discontinued: TBooleanField; procedure ADOQuery2CalcFields(DataSet: TDataSet); procedure ADOQuery1BeforePost(DataSet: TDataSet); procedure ADOQuery1AfterPost(DataSet: TDataSet); procedure ADOQuery1PostError(DataSet: TDataSet; E: EDatabaseError; var Action: TDataAction); private { Private declarations } public { Public declarations } end;var Form1: TForm1;implementation{$R *.dfm}procedure TForm1.ADOQuery2CalcFields(DataSet: TDataSet);begin try ADOQUery3.Parameters.ParamByName('categoryid').Value:= DataSet.FieldByName('categoryid').Value; ADOQuery3.Active:=True; DataSet.FieldByName('categoryname').Value:= ADOQuery3.FieldByName('categoryname').Value; finally ADOQUery3.Close; end;end;procedure TForm1.ADOQuery1BeforePost(DataSet: TDataSet);begin ADOConnection1.BeginTrans;end;procedure TForm1.ADOQuery1AfterPost(DataSet: TDataSet);begin ADOConnection1.CommitTrans;end;procedure TForm1.ADOQuery1PostError(DataSet: TDataSet; E: EDatabaseError; var Action: TDataAction);begin ADOConnection1.RollbackTrans; Action:=daAbort;end;end. 小鸟问问题哈,帮帮忙 搞了一天没有解决的存储过程的问题! 请教我在安装第三方控件(EhLib)的时候 记录太多的时候,怎么分批读取数据啊? 菜鸟问题,为什么会产生这么奇怪的异常错误 精华区的贴子怎么不能看了? 寻delphi科学计算函数包 关于dbgrid的使用问题 delphi 关于通讯协议方面的问题(INDY) DCOM的高难度问题? 大家说说,杭州龙盛信息技术公司,怎么样啊? 我是面试的. 菜鸟问题:怎么比较数的大小
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, dbcgrids, ExtCtrls, DBCtrls, DB, ADODB, Grids, DBGrids,
StdCtrls, Mask;type
TForm1 = class(TForm)
ADOConnection1: TADOConnection;
ADOQuery1: TADOQuery;
DataSource1: TDataSource;
ADOQuery2: TADOQuery;
DBNavigator1: TDBNavigator;
DBCtrlGrid1: TDBCtrlGrid;
DataSource2: TDataSource;
ADOQuery1SupplierID: TAutoIncField;
ADOQuery1CompanyName: TWideStringField;
ADOQuery1ContactName: TWideStringField;
ADOQuery1ContactTitle: TWideStringField;
ADOQuery1Address: TWideStringField;
ADOQuery1City: TWideStringField;
ADOQuery1Region: TWideStringField;
ADOQuery1PostalCode: TWideStringField;
ADOQuery1Country: TWideStringField;
ADOQuery1Phone: TWideStringField;
ADOQuery1Fax: TWideStringField;
ADOQuery1HomePage: TMemoField;
Label1: TLabel;
DBEdit1: TDBEdit;
Label2: TLabel;
DBEdit2: TDBEdit;
Label3: TLabel;
DBEdit3: TDBEdit;
DBNavigator2: TDBNavigator;
DBGrid1: TDBGrid;
ADOQuery3: TADOQuery;
ADOQuery2CATEGORYNAME: TStringField;
ADOQuery2ProductID: TAutoIncField;
ADOQuery2ProductName: TWideStringField;
ADOQuery2SupplierID: TIntegerField;
ADOQuery2CategoryID: TIntegerField;
ADOQuery2QuantityPerUnit: TWideStringField;
ADOQuery2UnitPrice: TBCDField;
ADOQuery2UnitsInStock: TSmallintField;
ADOQuery2UnitsOnOrder: TSmallintField;
ADOQuery2ReorderLevel: TSmallintField;
ADOQuery2Discontinued: TBooleanField;
procedure ADOQuery2CalcFields(DataSet: TDataSet);
procedure ADOQuery1BeforePost(DataSet: TDataSet);
procedure ADOQuery1AfterPost(DataSet: TDataSet);
procedure ADOQuery1PostError(DataSet: TDataSet; E: EDatabaseError;
var Action: TDataAction);
private
{ Private declarations }
public
{ Public declarations }
end;var
Form1: TForm1;implementation{$R *.dfm}procedure TForm1.ADOQuery2CalcFields(DataSet: TDataSet);
begin
try
ADOQUery3.Parameters.ParamByName('categoryid').Value:=
DataSet.FieldByName('categoryid').Value;
ADOQuery3.Active:=True;
DataSet.FieldByName('categoryname').Value:=
ADOQuery3.FieldByName('categoryname').Value;
finally
ADOQUery3.Close;
end;
end;procedure TForm1.ADOQuery1BeforePost(DataSet: TDataSet);
begin
ADOConnection1.BeginTrans;
end;procedure TForm1.ADOQuery1AfterPost(DataSet: TDataSet);
begin
ADOConnection1.CommitTrans;
end;procedure TForm1.ADOQuery1PostError(DataSet: TDataSet; E: EDatabaseError;
var Action: TDataAction);
begin
ADOConnection1.RollbackTrans;
Action:=daAbort;
end;end.