当前位置:  开发笔记 > 数据库 > 正文

在sql server中一次插入固定数量的行2000

如何解决《在sqlserver中一次插入固定数量的行2000》经验,为你挑选了1个好方法。

我想一次将50,000条记录插入sql server database 2000.怎么做到这一点?



1> Giacomo Degl..:

您可以使用SELECT TOP子句:在MSSQL 2005中,它被扩展,允许您使用变量来指定记录数(旧版本只允许数字常量)

您可以尝试这样的事情:(未经测试,因为我目前无法访问MSSQL2005)

begin
declare @n int, @rows int

    select @rows = count(*) from sourcetable

    select @n=0

    while @n < @rows
    begin

        insert into desttable
        select top 2000 * 
        from sourcetable
        where id_sourcetable not in (select top (@n) id_sourcetable 
                    from sourcetable 
                    order by id_sourcetable)
        order by id_sourcetable

        select @n=@n+2000
    end
end

推荐阅读
N个小灰流_701
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有