七达网是国内最新、最齐、最安全的软件下载基地!

关于我们最近更新热门排行

首页 软件 游戏 应用 文章 专题

新闻资讯软件应用软件教程编程开发 操作系统游戏攻略安卓应用安卓游戏
当前位置:首页 ›› 编程开发 ›› Visual Studio进行SQL Server源代码管理和部署方法

Visual Studio进行SQL Server源代码管理和部署方法

2014-12-12 16:51   作者:佚名   来源:本站整理   浏览:953   评论:1  

Visual Studio 2013中SQL Server Data Tools(SSDT)这一特性,该特性可以用于在源代码优先这一方法论中管理数据库。简单来说,对于数据库表、视图等对象的修改,都将以源代码的方式在Visual Studio中完成。源代码可以与生产环境的数据库进行比较,并且在编译后生成一份部署脚本。

通过“导入”指令,SQL Server Data Tools可以对一个现有的数据库进行反向工程,将其转换至一个空的项目中。需要指出的是,该项目必须保证是完全空的,一旦你在这个项目中加入了任何文件,“导入”指令就无法应用于数据库上了。

首先,创建一个全新的SQL Server Database项目,右键单击Solution Explorer中的项目,并选择“导入”,再选择“数据库”。

数据库项目并不强制你使用任何特殊的文件夹结构。与C#不同,它使用文件夹结构作为默认的命名空间,而SSDT允许你将某个schema中的对象放入为另外的schema所创建的文件夹中。尽管如此,该导入工具仍然会为你推荐一些文件夹结构,作为项目的起点。包括以下选项:

Schema

对象类型

Schema/对象类型

即便在小型数据库中,我也建议你使用Schema/对象类型结构。如果你只使用Schema结构,不久你就会发现你会不停地打开各个文件,仅仅是为了查看该文件是什么类型的。而如果你只使用对象类型结构,那就会促使开发者们倾向于将所有对象都创建在dbo这个schema下。

数据库设置

在“项目设置”这个标签页下可以找到数据库的通用设置。如果你没有找到想要的设置项,也可以通过SQL语句直接添加。在本文稍后的“存储”这一节中你将看到相关的示例。
Visual Studio进行SQL Server源代码管理和部署方法Visual Studio进行SQL Server源代码管理和部署方法Visual Studio进行SQL Server源代码管理和部署方法

调试选项

在我们离开项目设置这个窗口前,你还需要设置一个调试数据库。每次你的应用程序开始运行时,数据会自动部署到这个调试数据库中。如果你选项的数据库名称不存在,那么在你的项目初次运行时,会自动创建这个数据库。

一般来说,你应该会选择“在目标数据库中删除对象,但在项目中保留”这一选项,否则你的调试数据库就会累积在开发过程中曾一度创建,而后被删除的这些对象。

只差最后的一步,你就可以完成数据库的设置,让它支持自动部署了。你需要打开解决方案的属性设置,并将该数据库项目设置为启动项目的一个依赖项。
Visual Studio进行SQL Server源代码管理和部署方法

存储

如果你需要指明额外的,或者是特定的文件组,你可以使用项目内置的对象模板,它们将创建类似于以下的脚本:

ALTER DATABASE [$(DatabaseName)]

ADD FILEGROUP [FileGroup1]

请注意这里对sqlcmd变量的使用[$(DatabaseName)],如果你希望在同一台服务器上部署同一个数据库项目的多个拷贝,它将会很有用。

安全

在配置一个新数据库时,人们经常会犯的错误就是一上来就为所有人分配所有的访问权,并且假设将来某一天你会锁定这些访问权。安全设置往往是十分微妙的,尤其在使用高级特性时,它很可能出乎你的意料。因此,更好的方式是在创建用户帐号的时候不要分配任何权限,随后在需要时为他们分配对特定对象和特性的访问权。

Schema

数据库导入流程会将schema定义创建在Security文件夹中,而不是该schema所对应的同名文件夹中。请记住,文件夹的位置并不重要,你可以选择将schema的定义移动到其它文件夹中。

登录帐号与用户

虽然从技术角度上来说,登录帐号是一个服务器对象,而不是数据库对象,但你仍然可以将它包含在项目中。如果该登录帐号已经存在了,那么在部署时会自动忽略它。

当你在创建登录帐号时,请不要使用“USE master”指令,部署工具会自动为你进行处理。

在默认情况下,新创建的登录帐号和用户还不能连接到数据库服务器。这意味着你需要在脚本中加入一行“GRANT CONNECT TO [userName]”语句。

Tags:责任编辑:kang1127
    1. Microsoft SQL ServerMicrosoft SQL Server

      本合集包含了Microsoft SQL Server2000-2019的所有版本,都是正版软件的32/64位,Microsoft SQL Server是Microsoft 公司推出的关系型数据库管理系统。

    软件评论

    请自觉遵守互联网相关政策法规,评论内容只代表网友观点,与本站立场无关!

        登录   注册