SQL Server 导出/导入序列

Sim*_*mie 3 sql-server import export sequence

将 SQL Server 2012Sequence对象从一个实例导出到另一个实例的最佳方法是什么?是否有类似于用于表数据的 bcp 实用程序?

我们有几百个要转移。我需要保持下一个值,因为我们也在移动表数据。

mar*_*c_s 6

一种可能性是让您的系统创建 SQL 脚本,然后您可以在其他系统上执行这些脚本 - 如下所示:

SELECT 
    'CREATE SEQUENCE ' + seq.name + ' AS ' + t.name +
    ' START WITH ' + CAST(seq.current_value AS VARCHAR(20)) + 
    ' INCREMENT BY ' + CAST(seq.increment AS VARCHAR(10))
FROM 
    sys.sequences seq
INNER JOIN 
    sys.types t ON seq.system_type_id = t.system_type_id
Run Code Online (Sandbox Code Playgroud)

在给定的数据库上运行此 SQL 会生成一个输出,其中包含CREATE SEQUENCE用于重新创建序列的语句,使用current_value作为起点并使用定义的Increment By值。

当然,如果您需要其他选项,例如CYCLENO CYCLE等 -sys.sequences可以根据需要编写目录视图中包含的所有内容:-)