读书人

post如何设置保存对数据库的修改

发布时间: 2012-02-21 16:26:23 作者: rapoo

求助post怎么设置,保存对数据库的修改
具体是我做了两个form
form1为主form 显示数据库 person表 并包括 添加 修改 删除 保存 4个按钮
在点击 添加 修改 会弹出form2
然后对 edit1 edit2 edit3 combobox1 填写内容后 点击保存 能将数据保存到数据库
现在对点击按钮的 代码怎么写 代码我贴出来 form2的
unit Unit2;

interface

uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls, ADODB;

type
TOperate = (otAdd, otEdit);
TForm2 = class(TForm)
Label1: TLabel;
Edit1: TEdit;
Label2: TLabel;
Edit2: TEdit;
Label3: TLabel;
Edit3: TEdit;
Button1: TButton;
Button2: TButton;
ComboBox1: TComboBox;
Label4: TLabel;
procedure Button1Click(Sender: TObject);
private
Fop: TOperate;
procedure InitWindow(Query: TADOQuery);
public
{ Public declarations }
end;

var
Form2: TForm2;

function ShowPersonInfo(Query: TADOQuery; op: TOperate): Boolean;

implementation
uses Unit1;
{$R *.dfm}

function ShowPersonInfo(Query: TADOQuery; op: TOperate): Boolean;
begin
with TForm2.Create(nil) do
try
Fop := op;
InitWindow(Query);
Result := ShowModal = mrOk;
finally
Free;
end;
end;

{ TForm2 }


procedure TForm2.Button1Click(Sender: TObject);
begin
[color=#FF0000][/color]这里要怎么写
end;

procedure TForm2.InitWindow(Query: TADOQuery);
begin
if Fop = otAdd then
begin
[color=#FF0000][/color]这里是写插入部分的 要怎么写
end;
if Fop = otEdit then
begin
// showmessage(Query.FieldByName('SNAME').AsString);
Edit1.Text := Query.FieldByName('XH').AsString;
Edit2.text := Query.FieldByName('SNAME').AsString;
Edit3.Text := Query.FieldByName('MARKS').AsString;
ComboBox1.items.insert(0,query.fieldbyname('SEX').AsString);
ComboBox1.ItemIndex:=0;
[color=#FF0000][/color]这里是写修改部分我写了一部分 不知掉全不全
end;
end;

end.
总体上就这么多
小弟肯定各位大虾鼎力相助

[解决办法]
[color=#FF0000][/color]这里要怎么写

Self.ModalResult := mrOk;这样关闭窗体,然后
ShowModal;
if ModalResult = mrOK then
begin
adoquery1.edit;
adoquery1.fieldbyname('xxx').asstring := edit1.text;
adoquery1.Post;
end;

[解决办法]
[color=#FF0000][/color]这里是写插入部分的 要怎么写
插入部分可以增加一个adocommand,con指向adoconnection
adocommand1.commandtext:='insert into 表(字段1,字段2) values('''+值1+''','''+值2+''')';
adocommand1.execute;
[解决办法]
大哥,adoquery1是你ado控件的名字,自己改一下
[解决办法]
tadoquery是类名,不是控件名,点击控件,name的地方显示的才是控件名
adocommand是控件,有个Connection属性指向adoconnection控件,想知道怎么用可以问百度,满屏的例子,表告诉我你是外国人不懂中文,我是中国人不懂外文的
[解决办法]
小学生先啃书;
等你懂了0-100,加,减,乘,除后,遇到问题再来问吧!
现在大家说什么你也不懂!
[解决办法]
delphi5开发人员指南
[解决办法]
建LZ先看一些入的。有一本叫什 DELPHI 黑皮,具叫什不清了。控件的。

读书人网 >.NET

热点推荐