VS 中 Sql Server Database Project 的应用(二)

在上一篇【VS 中 Sql Server Database Project 的应用(一)】文章中我们已经创建好了我们的项目以及结构,现在我们要开始编码了。一般来说,当创建好数据库后,都会单独为此数据指定一个用户用于访问和操作,那么我们就先从创建用户开始。

创建用户步骤:

  1. 创建 SQL Server 服务器级别的登陆账户

  2. 为登陆账户添加角色

  3. 创建数据库级别的操作用户

  4. 为操作用户添加角色

具体实现如下:

我们新建了两个文件 Demo.login.sql 和 Demo.user.sql 如下图。

看似简单的操作(不就是新增两个文件嘛),但还是有需要注意的地方。虽然我们新增的文件基本上都是后缀名为 .sql 的脚本文件,但实际上文件类型还是有区别的。

我们上面添加的两个文件的文件类型是 Script(build),注意不要选择Not in build。 Script(build) 和 Script(Not in build)的区别是什么呢? 从字面上基本就可以看出,build 类型的文件是在编译部署时会执行的,而 Not in build 类型的文件在项目编译部署时是不会执行的。我们选择 Script(build) 类型,是因为我们希望在部署数据库时就执行 创建用户 的操作。

注: 通过快捷方式创建的脚本文件,默认是 Script(Not in build) 类型的。

Demo.login.sql 的代码实现如下:

/*
    ==创建登陆用户==

    用户名: iDemo
    密  码: iDemo
    默认库: DemoDB
    默认语言: 英语
    强制密码策略: 关闭
*/
CREATE LOGIN iDemo WITH PASSWORD=‘iDemo‘, DEFAULT_DATABASE = DemoDB, DEFAULT_LANGUAGE = US_ENGLISH, CHECK_POLICY = OFF

GO

/*
    ==角色添加==

    用户: iDemo
    角色: sysadmin
*/
EXEC sp_addsrvrolemember ‘iDemo‘, ‘sysadmin‘

GO

Demo.user.sql 的代码实现如下:

/*
    ==创建数据库用户==

    用户名: iDemo
    该用户映射的服务器登陆账户是: iDemo
    默认架构: dbo
*/
CREATE USER iDemo FOR LOGIN iDemo WITH DEFAULT_SCHEMA = dbo

GO

/*
    ==添加角色==

    用户: iDemo
    角色: db_onwer
*/
EXEC sp_addrolemember ‘db_owner‘, ‘iDemo‘

GO

OK啦, 用户创建这部分的编码我们已经完成了,接下来我们来创建一张表。在Table目录文件夹: 右键 -> Add -> Table -> 输入表名。 之后出来的界面如下图:

表格的界面由 设计 和 T-SQL 两部分组成, 设计又分为表格字段信息 和 与表格相关的其他信息(约束, 索引, 触发器等等)两部分。 新建的表格默认只会生成一个主键字段Id。 上图中的表格是我完成后的样子。你可以选择只用设计界面或只用T-SQL界面,我比较习惯用T-SQL界面来进行操作。

类似的你也可以在相应的结构目录下尝试新建存储过程,函数等操作,当然,存储过程,函数等是没有设计界面的,只有 T-SQL 界面。 但系统会为我们创建好模板代码,如创建存储过程是时,系统自动生成的模板代码如下

CREATE PROCEDURE [dbo].[Proc_DemoTest]
    @param1 int = 0,
    @param2 int
AS
    SELECT @param1, @param2
RETURN 0
时间: 2024-08-07 12:00:25

VS 中 Sql Server Database Project 的应用(二)的相关文章

VS 中 Sql Server Database Project 的应用(一)

Sql Server Database Project(后面简称:SSDP) 看名称就知道,这是一个数据库项目,和数据库肯定是脱不了干系的.在接触此类项目以前,关于数据的操作绝大多数都是在SQL Server Management Studio(后面简称:SSMS)中进行的.现在通过 SSDP 就可以完成和数据库相关的一系列操作.SSDP,用它我们能干些什么,我们又为什么要用它?答:在我看来 SSDP 就相当于一个数据库模板工具,我们可以用它来创建数据库模板,然后通过定义好的模板我们可以很快速,

Global Azure SQL Server Database 导出和导入配置介绍

我们前一篇文章介绍了Global Azure SQL Server Database的备份和还原配置介绍,今天我们就说说Global Azure SQL Server Database的导出和导入功能介绍,其实说到导出和导入,我们大家都会想到,其实就是将数据导出成一种格式,然后在另外一个环境中导入即可,该功能有点类似备份和还原的功能,也可以理解为迁移的功能,但是按照官网的字段定义就是导出和导入,在Global Azure SQL Server Database的导出原理就是将数据库整个架构导出到

P6 Professional Installation and Configuration Guide (Microsoft SQL Server Database) 16 R1

P6 Professional Installation and Configuration Guide (Microsoft SQL Server Database) 16 R1       May 2016 Contents About This Guide...................................................................................... 11 Shared Topics in This Guide .

lock(1)——创建及更新表过程中SQL SERVER锁资源分配情况

锁应该说是由关系型数据库ACID(Atomicity,Consistency,Isolation,Durability)特性而引出的. 以下将测试在创建及更新表过程中SQL Server锁资源分配情况 获取当前会话的事务隔离级别:DBCC USEROPTIONS 测试环境:SQL SERVER 2008 R2 read committed隔离级别下 创建表 当我们只是打开一个SSMS查询窗口,选择数据库为master和tempdb时,没有任何锁产生,当我选择其他数据库,sql server就会在

通过SSMS工具迁移本地的SQL Server Database到Windows Azure SQL Database

微软的产品更新越来越快了,几乎每年都有产品更新,今天呢,我们主要介绍一下,如何将本地的SQL Server数据库迁移到windows azure上的SQL Server Database.当然说到SQL Serrver数据库的迁移,大家都会想到最普通及最普遍的方法,那就是通过备份数据库,然后通过备份的数据库文件进行还原.其实呢,我们在IT运维的工作中多少会有体会,最普通的方法往往是最有效的方法也是最安全的方法,但是效率不高,由于时代进步的太快了,我们也不能太out了,也不想用这个古老的方法去做数

在windows 2008 R2中SQl Server 2008中代理启动失败的一个原因总结

启动SQL代理的时候报错如下: 关调用实时(JIT)调试而不是此对话框的详细信息,请参见此消息的结尾. ************** 异常文本 **************System.NullReferenceException: 未将对象引用设置到对象的实例. Server stack trace: 在 Microsoft.SqlServer.Management.UI.VSIntegration.ObjectExplorer.ObjectExplorer.FindObjectExplore

How to Kill All Processes That Have Open Connection in a SQL Server Database[关闭数据库链接 最佳方法] -摘自网络

SQL Server database administrators may frequently need in especially development and test environments  instead of the production environments to kill all the open connections to a  specific database in order to process SQL Server maintenance task ov

SQL Server 2008空间数据应用系列二:空间索引(Spatial Index)基础

原文:SQL Server 2008空间数据应用系列二:空间索引(Spatial Index)基础 在前一篇博文中我们学习到了一些关于地理信息的基础知识,也学习了空间参照系统,既地球椭球体.基准.本初子午线.计量单位.投影等相关理论知识,我们可以使用这些空间参照系统组件来定义一系列应用于地球空间上的几何图像来表示地理空间中的特定功能,表示着地球上一个一个特定的位置点. 本篇主要介绍地理空间索引的概念以及微软SQL Server 2008 R2中的空间索引的应用. 一.空间索引 空间索引是指依据空

SQL Server Database 维护计划创建完整的备份策略

 SQL Server的维护计划Maintenance Plan是一个非常实用的维护工具,可以完成大多数的数据库维护任务,通过对这些功能的封装,可以省去很多的代码编写时间.网络上完整介绍的不是很多,特此补上一篇. 数据库的备份是日常操作非常重要的一个环节,备份的方法也很多,其中最简单的方法就是通过Management Studio的图形界面,这种方法对于即时性的备份需求是最快的. 也可以通过SQL语句,直接通过语句相对来说对于自定义的自动化备份更灵活: BACKUP DATABASE myd