1)检查指定的当前标识值

DBCC CHECKIDENT

select MAX(Id) from [Table]
xxx = MAX(Id)
dbcc checkident('Table',Reseed,xxx)

2)with as  

ALTER FUNCTION [dbo].[fn_Cte_Split_Inline]
(
    @list  nvarchar(MAX),
    @delim nchar(1) = ','
)
RETURNS TABLE
AS
RETURN

    WITH csvtbl(debut, fin) AS (
            SELECT
                debut = convert(bigint, 1),
                fin = charindex(@delim, @list + convert(nvarchar(MAX), @delim))
        UNION ALL
            SELECT
                debut = fin + 1,
                fin = charindex(@delim, @list + convert(nvarchar(MAX), @delim), fin + 1)
            FROM  csvtbl -- recursive
            WHERE (fin > 0)
    )

    SELECT ltrim(rtrim(convert(nvarchar(4000),
            substring(@list, debut,
                      CASE    WHEN fin > 0 THEN fin - debut
                            ELSE 0 END)
         ))) AS Value
    FROM  csvtbl
    WHERE  (fin > 0)

Loop:



        create table #temp(Id bigint,Name nvarchar(500),[Level] int,[Type] int,[Guid] nvarchar(500))
        DECLARE User_Cursor CURSOR FOR
            SELECT *
            FROM #tempUsers
        OPEN User_Cursor;
            FETCH NEXT FROM User_Cursor
            into @UserId,@UserLevel
            WHILE @@FETCH_STATUS = 0
                BEGIN           
                    insert into #temp
                    exec [ps_User_GetUserDependencies] @UserId,@UserLevel,@Lang,0,1,1      
                    FETCH NEXT FROM User_Cursor
                    into @UserId,@UserLevel
                END
        CLOSE User_Cursor
        DEALLOCATE User_Cursor

        select distinct * from #temp
        drop table #temp
        drop table #tempUsers

posted on 2011-01-14 16:50  鱼不爱水  阅读(252)  评论(0)    收藏  举报