把ADOSPNewCustomID.Parameters.ParamByName('@NewID').value:='';去掉试试。
解决方案 »
- Adoquery1.LOCATE('danhao','AAA',[]); 如果danhao='AAA'的记录没找到的代码怎么写?
- 我现在有一个指针文件,而当前的控件不支持引用的指针,只支持如(my.Cursor:=$00007F02;)的指针,而我想把我的指针文件转换为地址.如何做.当
- 有Delphi+DX 开发经验的,想开发游戏的进来看看啦。。。。
- Delphi擂台赛第27期
- 关于dbgrideh
- 哪有感知日期时间的数据库控件?
- 大难度sql语句,200分解决
- delphi TServerSocket与TClientSocket传送文件 Client发送一次文件server的read事件被触发了几千次
- 借圣诞喜庆之日,给外甥女征集名字 ,灌水一贴
- 除了rx系列,ldm系列,ahm系列外,大家觉得还有哪些控件集值得推荐
- http://www.shd.com.cn打着Delphi的旗号做推销!建议斑竹踢出shdshd(DELPHI是我老婆!)
- DELPHI的随机函数是什么?
@NewID char(6) output
as
declare @maxNo char(6)
select @maxNo=max(用户编号) from 用户信息表
if @maxNo is not null
begin
set @NewID=@maxNo +1
return 0--加上这一句!!!!!!!!
end
else
set @NewID='100001'
return 0 --加上这一句!!!!!!!!
GO try
with myStoredProc do
begin
ProcedureName := 'proc_生成用户编号';
Parameters.Clear;
Parameters.AddParameter;
Parameters[0].Name := 'Return';
Parameters[0].Direction := pdReturnValue;
Parameters[0].DataType := ftInteger; Parameters.AddParameter;
Parameters[1].Name := '@NewID';
Parameters[1].Direction := pdInputOutput;
Parameters[1].DataType := ftString;
Parameters[1].Size := 6; ExecProc;
if Parameters[0].Value=0 then
begin
Edit1.Text := Parameters[1].Value;
end;
end;
Except
On E:EADOError do
begin
Application.MessageBox(Pchar('由于以下原因,操作失败:'+E.message),'出错',mb_OK+Mb_IconError);
Exit;
end;
end;
char类型加1是什么啊? declare @maxNo int
select @maxNo=convert(int,isnull(max(用户编号),'100001')) from 用户信息表
set @NewID := convert(char(6),@maxNo)
return 0