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

是否有一个"穷人"替代RedGate来编写整个数据库模式的脚本?

如何解决《是否有一个"穷人"替代RedGate来编写整个数据库模式的脚本?》经验,为你挑选了3个好方法。

我处于这样一种情况,我将为数据库生成一个脚本,我可以在另一台服务器上运行并获得与原始数据库相同的数据库,但没有任何数据.实质上,我希望最终得到一个捕获数据库模式的大型创建脚本.

我在安装了SQL Server 2000的环境中工作,我无法安装2005客户端工具(如果他们有帮助).我负担不起RedGate,但我真的希望在另一台服务器上拥有一个具有相同架构的数据库.

有什么建议?任何简单的.exe(无需安装)工具,技巧或T-SQL技巧都将非常受欢迎.

更新:我正在使用的数据库有200多个表和几个外键关系和约束,因此手动编写每个表并将脚本粘贴在一起并不是一个可行的选择.我正在寻找比这个手动解决方案更好的东西

其他更新除非我完全遗漏了某些内容,否则这不是使用SQL 2000工具的可行解决方案.当我选择在数据库上生成创建脚本的选项时.我最终得到一个包含CREATE DATABASE命令的脚本,并且没有创建任何对象 - 表,约束等.SQL 2005的Management Studio也可以处理这些对象,但数据库处于没有对象的环境中我可以将Management Studio的安装连接到它.



1> BoltBait..:

运行SQL Server Management Studio,右键单击数据库并选择 Script Database as > Create to > file

这适用于SQL Server 2005.SQL Server 2000企业管理器具有类似的命令.只需右键单击数据库即可> All Tasks > Generate Scripts.

编辑:在SQL Server 2005中,您可以在对象资源管理器窗格中选择"数据库",然后在详细信息窗格中选择几个数据库.然后,右键单击您的选择并将"脚本数据库另存为>创建到>文件".这将导致它将它们全部放入一个脚本中,它将包括所有表,键,存储过程和约束.



2> Bobby Ortiz..:

所以,我假设您无法安装SQL Server Management Studio.甚至没有免费版本.如果这是一次性的事情,我会安装红门工具.试用版可以使用14天.做你的工作,然后卸载.您也可以查看http://www.xsqlsoftware.com/,它们具有与Red Gate类似的功能.如果您的数据库很小,那么他们可以为您提供免费选项.我也喜欢http://www.apexsql.com/.使用其中一个的试用,然后再次尝试说服你的老板买一个.



3> belugabob..:

除了上面的答案之外,我还建议(至少在未来的项目中)你没有掌握数据库本身的数据库设计.

实现此目的的一种方法是从第一天开始简单地将数据库表,过程等维护为"CREATE"脚本,并设计一个主脚本,将所有单个脚本连接在一起,以便部署到您选择的数据库中.

一个更复杂的解决方案是使用像Visual Studio数据库版本(可能太贵了,如果你的评论是任何东西),它允许你将每个数据库对象视为项目中的节点,同时仍然允许整个事情是只需点击几下即可部署.

这两个选项的解释都过于简化,因为还有很多其他问题 - 版本控制,数据迁移等 - 但主要原则是相同的.

一旦您提取了脚本 - 使用其他答案之一 - 您可能需要考虑使用此脚本作为"主人"的基础.

只需将"设计"保留在数据库之外 - 这纯粹是为了"实现".

尝试将该过程视为与开发代码类似 - 源和二进制文件保持独立,后者由前者生成.

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