首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何将一个.sql脚本拆分为多个文件?

如何将一个.sql脚本拆分为多个文件?
EN

Stack Overflow用户
提问于 2009-05-13 12:47:18
回答 5查看 9.2K关注 0票数 4

我正在使用DatabasePublishingWizard生成一个大型的create脚本,其中包含数据和模式。它生成的文件非常庞大,所以打开脚本来修复任何语法错误几乎是不可能的,并且小于4 4gb的机器很难让它运行!我应该做什么,我应该怎么做?感谢大家能提供的任何帮助。

EN

回答 5

Stack Overflow用户

回答已采纳

发布于 2009-05-13 13:06:11

使用数据库发布向导,您可以将所有对象创建为单独的文件,而不是一个大文件。然后,您可以将所有文件放入源代码管理中,并跟踪所有更改。

我当前的项目使用脚本重新创建数据库以进行开发。该脚本删除所有现有对象,然后对每个对象文件使用以下语句读取它们。

sqlcmd -S %1 -d THRIVEHQ -E -b -i "../Tables/Schema.sql“if %ERRORLEVEL%NEQ 0 goto errors

票数 3
EN

Stack Overflow用户

发布于 2009-05-13 14:21:40

我只想补充一下Kevin的评论。将脚本分解成单独的文件,然后编写脚本,将所有文件按执行顺序排列。

当将具有大量相互依赖关系的大型数据库转储为一个大型文件时,这对您没有多大好处,因为在大多数情况下,脚本不会在没有错误的情况下执行。在我的世界中,我使用了一种命名约定,它可以帮助我快速了解在这种情况下,哪些视图依赖于其他视图。例如,如果我有一个只生成数据转储的视图,我会使用类似于v_ view _NAME_ORIGINATING- table _Dump的内容,然后将后缀更改为从主转储表派生的视图的后缀,如_weekly或_weekly_Summary。

我多年前就吸取了教训,从那以后,我的所有数据库都遵循了这个命名模式。

票数 1
EN

Stack Overflow用户

发布于 2010-07-21 13:45:10

试试DBSourceTools。

http://dbsourcetools.codeplex.com

它会把你的整个数据库写到磁盘上,每个数据库对象一个文件。

使用部署目标,您可以从文件重新创建任何数据库。

它是专门为帮助开发人员将其数据库置于源代码控制之下而设计的。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/857754

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档