我的表table1是:
ID int identity(1,1),--是标识
NameID uniqueidentifier primary key default newID(),--是主键
Name nvarchar(100),
Sex nvarchar(10)现在希望新建一个记录后能够返回IDENTITY列的值,或者主键的值,怎么得不到呢?
存储过程是这么写的:@Name nvarchar(100),
@Sex nvarchar(10),
@ID int output,
@NameID nvarchar(250) outputas
Insert into table1 (Name,Sex) values (@Name,@Sex);
Select @ID=SCOPE_IDENTITY();
Select @NameID=&&IDentity
Return无论是输出其中的ID,或者NameID,都不对,
不知道问题,出现在什么地方。
请教大侠帮忙解决,非常感谢!
ID int identity(1,1),--是标识
NameID uniqueidentifier primary key default newID(),--是主键
Name nvarchar(100),
Sex nvarchar(10)现在希望新建一个记录后能够返回IDENTITY列的值,或者主键的值,怎么得不到呢?
存储过程是这么写的:@Name nvarchar(100),
@Sex nvarchar(10),
@ID int output,
@NameID nvarchar(250) outputas
Insert into table1 (Name,Sex) values (@Name,@Sex);
Select @ID=SCOPE_IDENTITY();
Select @NameID=&&IDentity
Return无论是输出其中的ID,或者NameID,都不对,
不知道问题,出现在什么地方。
请教大侠帮忙解决,非常感谢!
这个写法应该没问题。下面那个不对。sql的调用方法:
declare @n int
exec pp 参数1,参数2,@n outputselect @n
@Sex nvarchar(10),
@ID int output,
@NameID nvarchar(250) outputas
Insert into table1 (Name,Sex) values (@Name,@Sex);
Select @ID=SCOPE_IDENTITY();
Select @NameID=NameID from table1 where id=@id
Return
select top 1 * from tb order by ID desc
select @id=scope_identity()!
@Name nvarchar(100),
@Sex nvarchar(10),
@ID int output,
@NameID nvarchar(250) outputas
Insert into table1 (Name,Sex) values (@Name,@Sex);
Select @ID=SCOPE_IDENTITY();
Select @NameID=NameID from table1 where id=@id
Return
也谢谢各位的帮助!
SQL77 (77C#+SQL) 以前我好像没有问过同样的问题吧,以前碰到的是其它问题,也谢谢了!
结贴