1、ThDataSet可以增加显示字段,字段可以不更新,只要设置ProviderFlags pflnUpdate、pflnWhere为false就可以
2、连接数据库
if not CommDB.ConnSocket('120.36.138.66:11999') then
//if not CommDB.ConnSocket('192.168.199.100:11981') then
begin
ShowMessage('服务器没有响应连接, 请稍候再试! ');
Exit;
end
else ShowMessage('连接成功!')
3、打开数据库
qryMain.Params[0].Value := '1232432453'; // 赋值参数条件
qryMain.OpenData;
4、增加赋值、删改
qryMain.Append;
qryMainCarInOutID.Value := '1232432453';
qryMain.delete;
5、保存
if CommDB.UpdateDataADOBatch([qryMain]) then
begin
ShowMessage('保存成功!');
end;
原型:
function UpdateDataADOBatch(const DataSets: array of ThDataSet;
ReLoadMode: Integer = 1; DBType: integer = 0; UpdateMode: Integer = 1; bTrans: boolean = False): boolean;
// ReLoadMode是否重新打开(0:不设置;1:只更新不打开;2:更新后打开)
// DBType数据库类型
// UpdateMode更新模式
// bTrans是否事务更新
function TCommDB.UpdateDataADOBatch(const DataSets: array of ThDataSet; ReLoadMode, DBType,
UpdateMode: Integer; bTrans: boolean): boolean;
6、多个DataSet事务更新,只要有任何一个数据集更新有问题,所有数据集更新都无效
Commdb.UpdateDataBatchTrans([hDataSetBefore,ADODataSet,ADOQChoiceCustSource,ADOQbd_Employee_Customers,
ADOQbd_adviser_Customers,hDataSetAfter,ADQOCusPhoto]);
7、设置查询字段
放置两个数据集,一个数据集里某些字段的值通过另一个数据集去查询
8、设置字段是否显示
Search_AdoDataSet.FieldByName('FSTATE').Visible := false;
Search_AdoDataSet.FieldByName('subid').Visible := false;
9、lookup字段的设置
10、会根据SQL数据类型来判断字段是什么类型,比如:如果0 as fmoney 那么fmoney就是整型,如果0.0 as fmoney那么fmoney就为浮点型
11、参数应用
procedure Tsm_LoginEditForm.SaveLogin;
begin
adoqry_UpdateLogin.Close;
adoqry_UpdateLogin.Params.ParamByName('pEmployeeNo').Value := LoginRecord.EmployeeNo;
adoqry_UpdateLogin.Params.ParamByName('pLoginName').Value := trim(edtLogin_New.Text);
//adoqry_UpdateLogin.Params.ParamByName('pPassword').Value := Encrypt(trim(edtPassword_New.Text));
adoqry_UpdateLogin.Params.ParamByName('pPassword').Value := trim(edtPassword_New.Text);
adoqry_UpdateLogin.ExecSQL;
end;