商業源碼熱門下載www.html.org.cn
sqlserver中一個多用戶自動生成編號的過程
if not exists (select * from dbo.sysobjects where id = object_id(n'[indextable]') and objectproperty(id, n'isusertable') = 1)
create table indextable(ex char(20), num integer)
go
create procedure setindex @ex char(20),@result char(30) output,@fmt integer
as
declare @num char(10)
set nocount on
if not exists(select num from indextable where [email protected] )
insert into indextable values(@ex,1)
else
update indextable set num=num+1 where [email protected]
select @num=cast(num as char(10)) from indextable where [email protected]
select @num=space(@fmt-len(@num))[email protected]
select @num=replace(@num,' ','0')
select @result=rtrim(@ex)+rtrim(@num)
set nocount off
go
--------
在delphi中調用
procedure tform1.button1click(sender: tobject);
begin
storedproc1.parambyname('@ex').asstring:='user';
storedproc1.parambyname('@fmt').asinteger:=3;
storedproc1.execproc;
showmessage(storedproc1.parambyname('@result').value)
end;
-----------
參數@ex表示前綴,@fmt表示數字長度,@result表示返回數據
返回user001
新聞熱點
疑難解答