修改类别 (类实现)两种方法
unit UUpdateLeiBie;
interface
uses
Winapi.Windows, Winapi.Messages, System.SysUtils, System.Variants, System.Classes, Vcl.Graphics,
Vcl.Controls, Vcl.Forms, Vcl.Dialogs, Vcl.ComCtrls, Data.DB, Data.Win.ADODB,
Vcl.ExtCtrls, Vcl.DBCtrls, Vcl.Grids, Vcl.DBGrids, Clipbrd, Vcl.Menus,
Vcl.StdCtrls, DBGridEhGrouping, ToolCtrlsEh, DBGridEhToolCtrls, DynVarsEh,
EhLibVCL, GridsEh, DBAxisGridsEh, DBGridEh,EhLibADO, Vcl.Buttons;
type TUpdateLeiBie=class
public
class procedure updateselectedleibie(var combox:TComboBox; SAdq:TADOQuery);
class procedure updateselectedleibierequery(var SAdq:TADOQuery);
end;
implementation
/// <summary>
/// 通过打开窗口combobox下拉选择修改
/// </summary>
uses FDataPool, Uleibie;
class procedure TUpdateLeiBie.updateselectedleibie(var combox:TComboBox; SAdq:TADOQuery);
var
MyAdoq:TADOQuery;
LeiBie,SBiao: string;
begin
MyAdoq := TADOQuery.Create(nil);
SBiao:=copy(SAdq.name,4,length(SAdq.name)-3);
try
MyAdoq.Connection := frmDataPool.ADOConnection1;
LeiBie:=combox.text;
with MyAdoq do
begin
Close;
SQL.Text := 'UPDATE '+SBiao+' SET 类别 ='+ LeiBie.QuotedString+'where 选中 = true';
ExecSQL;
end;
//防止程序假死
Application.ProcessMessages;
//刷新纪录
SAdq.Requery;
finally
MyAdoq.Free;
end;
end;
/// <summary>
/// 通过requery窗口询问写法类实现
/// </summary>
class procedure TUpdateLeiBie.updateselectedleibierequery(var SAdq: TADOQuery);
var
LeiBie,SBiao: string;
SAdoq:TADOQuery;
begin
SAdoq:=TADOQuery.Create(nil);
SAdoq.Connection:=frmDataPool.ADOConnection1;
SBiao:=copy(SAdq.name,4,length(SAdq.name)-3);
try
//或许比例数值
if not InputQuery('修改类别', '请输入类别', LeiBie) then
begin
ShowMessage('请输入类别');
Exit;
end;
with SAdoq do
begin
Close;
SQL.Text:='UPDATE '+SBiao+' SET 类别 ='+LeiBie.QuotedString+'WHERE 选中 = true';
ExecSQL;
end;
//防止程序假死
Application.ProcessMessages;
//刷新纪录显示
SAdq.Requery();
finally
SAdoq.Free;
end;
end;
end.