Sql server 手动编写SQL Server升级脚本的提示
我们正在进行一些大型的模式更改,需要一些手动编写升级脚本的技巧。我们使用的是SQLServer2000,目前无法访问自动化工具,也不能选择这些工具。我们拥有的唯一数据库工具是SQL Server Management Studio。虽然不是您想要的,但您可以使用架构比较工具,如,然后只需将更改脚本化到SQL文件,然后在运行该文件之前手动编辑。我想这将接近于手动编写,而不是手动编写Sql server 手动编写SQL Server升级脚本的提示,sql-server,upgrade,data-migration,Sql Server,Upgrade,Data Migration,我们正在进行一些大型的模式更改,需要一些手动编写升级脚本的技巧。我们使用的是SQLServer2000,目前无法访问自动化工具,也不能选择这些工具。我们拥有的唯一数据库工具是SQL Server Management Studio。虽然不是您想要的,但您可以使用架构比较工具,如,然后只需将更改脚本化到SQL文件,然后在运行该文件之前手动编辑。我想这将接近于手动编写,而不是手动编写 如果您需要手动编写,我建议您使用一些intellisense类型的工具来加快速度。虽然您的想法不太清楚,但您可以使用
如果您需要手动编写,我建议您使用一些intellisense类型的工具来加快速度。虽然您的想法不太清楚,但您可以使用模式比较工具,如,然后只需将更改编写到sql文件中,然后您可以在运行该文件之前手动编辑该文件。我想这将接近于手动编写,而不是手动编写
如果您需要手动编写,我建议您使用一些intellisense类型的工具来加快速度。您的升级策略可能会根据您的部署场景进行一些定制,但以下几点可能会有所帮助
- 您将希望尽早且经常地进行测试(并不是说您无论如何都不会这样做),因此请确保在初始模式中有一个测试数据库,并提供一个备份,这样您就可以恢复到“开始”状态并测试升级任意次数
- 备份和恢复可能非常耗时,因此使用不含数据行的数据库(仅限架构)来测试升级脚本可能会有所帮助。记住要有一个“启动”备份,这样你就可以按需返回那里
- 考虑将一系列脚本串在一起—您可以在每个构建、功能或其他任何方面使用一个脚本。这样,一旦脚本的一部分正常工作,就可以不用管它了
- 大数据迁移可能会变得棘手。如果要进行数据转换、复制行或将行移动到新表等,请确保在移动前检查行数,然后计算所有行
- 计划失败。如果出现问题,制定一个解决方案——不管是将所有内容回滚到部署开始时进行的备份,还是其他什么。只要确保你有一个计划,你知道你的去/不去点在哪里
祝你好运 您的升级策略可能会根据您的部署场景进行一些定制,但这里有几点可能会有所帮助
- 您将希望尽早且经常地进行测试(并不是说您无论如何都不会这样做),因此请确保在初始模式中有一个测试数据库,并提供一个备份,这样您就可以恢复到“开始”状态并测试升级任意次数
- 备份和恢复可能非常耗时,因此使用不含数据行的数据库(仅限架构)来测试升级脚本可能会有所帮助。记住要有一个“启动”备份,这样你就可以按需返回那里
- 考虑将一系列脚本串在一起—您可以在每个构建、功能或其他任何方面使用一个脚本。这样,一旦脚本的一部分正常工作,就可以不用管它了
- 大数据迁移可能会变得棘手。如果要进行数据转换、复制行或将行移动到新表等,请确保在移动前检查行数,然后计算所有行
- 计划失败。如果出现问题,制定一个解决方案——不管是将所有内容回滚到部署开始时进行的备份,还是其他什么。只要确保你有一个计划,你知道你的去/不去点在哪里
祝你好运 您可以将数据库导入具有较新版本SQL的本地计算机,然后可以使用“生成脚本”功能编写大量数据库对象的脚本 确保在“高级设置”中为SQL Server 2000设置脚本
如果生成的脚本有问题,可以尝试将其分解成块,并以小批量运行。这样,如果您有任何特定生成的脚本,您可以手动编写SQL以使其运行。您可以将数据库导入到具有较新版本SQL的本地计算机,然后您可以使用“生成脚本”功能编写大量数据库对象的脚本 确保在“高级设置”中为SQL Server 2000设置脚本
如果生成的脚本有问题,可以尝试将其分解成块,并以小批量运行。这样,如果您有任何特定生成的脚本,您可以手动编写SQL以使其运行。您也没有访问Visual Studio的权限吗?我们有VS2008,但它不支持SQL Server 2000用于数据库项目。您也没有访问Visual Studio的权限吗?我们有VS2008,但是,它不支持SQL Server 2000用于数据库项目。