只能采用取最后一条记录的方法取出这个值.
并发时取的不准.建议你还是先定义变量再插入此字段.或者,如果表中有identity列,那么取到iden_currenty或@@identity,依具这个值去读取行, 再取行中的 uniquedentifier值

解决方案 »

  1.   

    其他认同楼上的,不过最后个人觉得使用IDENTITY_SCOPE取好些.
      

  2.   

    默认的取还是会很麻烦的,最好不要那么用,如果你真想要得到的话,就只能通过再写SQL语句得到了,不知道你要什么样的功能,必须那样做吗?
      

  3.   

    en.用 SCOPE_IDENTITY( )好一些.
    IDENT_CURRENT有并发问题.
      

  4.   

    呵呵,IDENT_SCOPE,不好意思,随手敲的,不排除手误^_^
      

  5.   

    create table t(ID uniqueidentifier output,Name nvarchar(100))go
    create proc test_p(@Name Nvarchar(100))
    as
    set @ID=newID()
    insert T(ID,Name) values(@ID,@Name)
    go
    2005时用
    insert T(ID,Name)
    output inserted.ID
    select @ID,@Name
    ---返回ID