if exists(select * from sysobjects where type='p' and name='num')
drop procedure num
go
create procedure num
@temp varchar(20) output
as
declare @maxbillno varchar(20)
--declare @temp varchar(20)
declare @id varchcar(20)
select @maxbillno='MEDZ0000'
BEGIN
select @id=id from aa
update aa set id=id+1
select @temp='MED'+right((right(@MaxBillNo,4)+@id),4)
update bb set id=@temp
--select id from bb
END
go
1.在delphi里怎样调用这段代码
2.如果没有@temp输出参数,最后那段代码没注销,又怎样调用
麻烦写出调用代码(上面代码没运行,也不知道对不)
drop procedure num
go
create procedure num
@temp varchar(20) output
as
declare @maxbillno varchar(20)
--declare @temp varchar(20)
declare @id varchcar(20)
select @maxbillno='MEDZ0000'
BEGIN
select @id=id from aa
update aa set id=id+1
select @temp='MED'+right((right(@MaxBillNo,4)+@id),4)
update bb set id=@temp
--select id from bb
END
go
1.在delphi里怎样调用这段代码
2.如果没有@temp输出参数,最后那段代码没注销,又怎样调用
麻烦写出调用代码(上面代码没运行,也不知道对不)
如下
adoquery1.close
adoquery1.sql.clear;
adoquery1.sql.add('exec num')//無參數
adoquery1.sql.add('exec num '+quotedstr(參數值1)+','+quotedstr(參數值n)//有參數
adoquery1.ExecSQL
with adoquery1 do
begin
close;
sql.clear;
sql.add('exec num '+quotedstr(參數值1);
ExecSQL;
end;
下面的代码又怎样写
with adoquery1 do
begin
close;
sql.clear;
sql.add('exec num '+quotedstr(參數值1);
open; //因为有语句返回;所以要用open
edit1.text := Fields[0].asstring;
edit2.text := FieldByname('id').asstring;
end;