存储过程创建如下:
CREATE procedure writeBankBill
(
@AccountNo varchar(50),
@AccountName varchar(50),
@DealDate Datetime,
@Debit varchar(50),
@Lend varchar(50)
)
AS
insert into BankBill(AccountNo, AccountName, DealDate, Debit, Lend)
values(@AccountNo, @AccountName, @DealDate, @Debit, @Lend)
GO
存储过程调用如下:var
AccountNo, AccountName: String;
DealDate : TDatetime;
Debit, Lend: String;
DealDate:= StrToDate('2007-03-03');
Debit:= Trim('123');
Lend:= Trim('123');
AccountName:= Trim('123');
AccountNo:= Trim('123');
with DModule.Strpre do
begin
Close;
Parameters.ParamByName('@DealDate').Value := DealDate;
Parameters.ParamByName('@AccountNo').Value := AccountNo;
Parameters.ParamByName('@AccountName').Value := AccountName;
Parameters.ParamByName('@Lend').Value := Lend;
Parameters.ParamByName('@Debit').Value := Debit;
ExecProc;end;
CREATE procedure writeBankBill
(
@AccountNo varchar(50),
@AccountName varchar(50),
@DealDate Datetime,
@Debit varchar(50),
@Lend varchar(50)
)
AS
insert into BankBill(AccountNo, AccountName, DealDate, Debit, Lend)
values(@AccountNo, @AccountName, @DealDate, @Debit, @Lend)
GO
存储过程调用如下:var
AccountNo, AccountName: String;
DealDate : TDatetime;
Debit, Lend: String;
DealDate:= StrToDate('2007-03-03');
Debit:= Trim('123');
Lend:= Trim('123');
AccountName:= Trim('123');
AccountNo:= Trim('123');
with DModule.Strpre do
begin
Close;
Parameters.ParamByName('@DealDate').Value := DealDate;
Parameters.ParamByName('@AccountNo').Value := AccountNo;
Parameters.ParamByName('@AccountName').Value := AccountName;
Parameters.ParamByName('@Lend').Value := Lend;
Parameters.ParamByName('@Debit').Value := Debit;
ExecProc;end;
表设计如下:
if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[BankBill]') and OBJECTPROPERTY(id, N'IsUserTable') = 1)
drop table [dbo].[BankBill]
GOCREATE TABLE [dbo].[BankBill] (
[SquNum] [int] IDENTITY (1, 1) NOT NULL ,
[DealDate] [datetime] NOT NULL ,
[Debit] [varchar] (50) COLLATE Chinese_PRC_CI_AS NULL ,
[Lend] [varchar] (50) COLLATE Chinese_PRC_CI_AS NULL ,
[AccountName] [varchar] (50) COLLATE Chinese_PRC_CI_AS NULL ,
[AccountNo] [varchar] (50) COLLATE Chinese_PRC_CI_AS NULL
) ON [PRIMARY]
GO
exec writeBankBill @AccountNo ='123',
@AccountName ='123',
@DealDate ='2007-03-02',
@Debit ='123',
@Lend ='123'
可以执行 没有错误的
Parameters.ParamByName('@AccountNo').AsString:= AccountNo;
Parameters.ParamByName('@AccountName').AsString := AccountName;
Parameters.ParamByName('@Lend').AsString := Lend;
Parameters.ParamByName('@Debit').AsString := Debit;
你说的好像编译通不过啊 兄弟! 谢谢 你了!
你单步调试,跟踪一下看具体出错的语句
with DModule.Strpre do
begin
Close; Parameters.ParamByName('@DealDate').Value := '2007-03-02';
Parameters.ParamByName('@AccountNo').Value := '13213';
Parameters.ParamByName('@AccountName').Value := '13213';
Parameters.ParamByName('@Lend').Value := '13213';
Parameters.ParamByName('@Debit').Value := '13213'; ExecProc; end;
这一句有问题吧,StrToDate('2007-03-02');
还是不行啊 兄弟 谢谢你了啊 !
http://community.csdn.net/Expert/topic/5438/5438885.xml?temp=.2847101