第一种方法应用存储过程
adoquery的exec方法
unit K_ProcManage;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls, DB, ADODB;
type
TProcManage = class(TForm)
Edit1: TEdit;
Edit2: TEdit;
Edit3: TEdit;
Edit4: TEdit;
Edit5: TEdit;
Button1: TButton;
Label1: TLabel;
Label2: TLabel;
Label3: TLabel;
Label4: TLabel;
Label5: TLabel;
MyStoredProc: TADOStoredProc;
Button2: TButton;
ADOQuery1: TADOQuery;
procedure Button1Click(Sender: TObject);
procedure Button2Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
ProcManage: TProcManage;
implementation
uses D_DataMoudule;
{$R *.dfm}
procedure TProcManage.Button1Click(Sender: TObject);
begin
with MyStoredProc do
begin
ProcedureName:='InsertStud';
Parameters.Clear;
Parameters.CreateParameter('@StudID', ftString, pdInput, 50, edit1.Text);
Parameters.CreateParameter('@StudName', ftString, pdInput, 50, edit2.Text);
Parameters.CreateParameter('@Sex', ftString, pdInput, 50, edit3.Text);
Parameters.CreateParameter('@Age', ftString, pdInput, 50, edit4.Text);
Parameters.CreateParameter('@Telephone', ftString, pdInput, 50, edit5.Text);
Prepared:= true;
ExecProc;
end;
end;
procedure TProcManage.Button2Click(Sender: TObject);
var
SQLProc:string;
begin
adoquery1.SQL.Clear;
SQLProc:='exec InsertStud '''+edit1.Text+''','''+edit2.Text+''','''+edit3.Text+''','''+edit4.Text+''','''+edit5.Text+'''';
adoquery1.SQL.Add(SQLProc);
adoquery1.ExecSQL;
end;
end.
第二种: