随笔分类 - SQL Server
SQL Server数据库
摘要:SQL Server用户撤消权限 简介 REVOKE语句从主体中撤销以前授予的对安全资源的权限。语法: REVOKE permissions ON securable FROM principal; 首先,在REVOKE子句中指定一个或多个权限。 其次,在ON子句中指定一个安全资源。 第三,在FRO
阅读全文
摘要:SQL Server用户授权(GRANT) 简介 使用CREATE USER语句创建用户后,该用户对数据库对象(如表、视图和索引)没有任何权限。 要允许用户与数据库对象交互,需要向用户授予权限。例如,可以授予权限,以便用户可以从表中查询数据。 GRANT语句可以向主体授予对安全资源的权限。 安全资源
阅读全文
摘要:#SQL Server创建用户 简介 SQL Server CREATE USER语句允许将用户添加到当前数据库。下面是CREATE USER语句的基本语法: CREATE USER username FOR LOGIN login_name; 首先,在CREATE USER关键字之后指定用户名。
阅读全文
摘要:#SQL Server创建LOGIN(登录) 简介 可能有人分不清LOGIN和USER,这儿有一段网上的解释: LOGIN是登录到服务器用的,用户是执行数据库运用的主体,是两个不同的概念,LOGIN是是针对服务器的,不能使用数据库的功能,USER是在某个数据库内起作用,一个LOGIN可以在多个数据库
阅读全文
摘要:#SQL Server事务日志备份 简介 当数据库的恢复模式为FULL(完整)或BULK_LOGGED(大容量日志)时,可以备份数据库的事务日志 在创建事务日志备份之前,需要创建至少一个完整备份。之后,可以创建任意数量的事务日志备份。 最好更频繁地将事务日志备份以: 最小化数据丢失 截断日志文件 通
阅读全文
摘要:SQL Server差异备份 简介 差异备份基于最近的完整备份。换句话说,只有在至少有一个完整备份后,才能创建差异备份。 差异备份捕获自上次完全备份以来的所有更改。完全备份是差异备份的基础。 下图说明了差异备份与完整备份之间的关系: 在这张图片中,有两个完整备份和三个差异备份。 第一个完整备份包含
阅读全文
摘要:#SQL Server完整备份 简介 完整数据库备份备份整个数据库。包括: 数据库的元数据,如名称、创建日期、数据库选项、文件路径等。 每个数据文件的已用数据页。 此外,完整备份还包括事务日志的一部分。它表示备份完成时的数据库。 执行完全备份时,SQL Server会使用大量磁盘I/O。因此,应该在
阅读全文
摘要:#SQL Server备份 什么是备份 备份是完整备份时该数据库的镜像。 备份数据库时,将其复制到磁盘等备份设备。稍后,可以使用备份文件将数据库恢复到其原始状态。 重要的是,有一个良好的备份策略来满足业务需求。备份策略的规划从恢复策略开始。 这些是指导恢复策略的重要问题: 可以容忍的最大数据丢失量是
阅读全文
摘要:#SQLServer 恢复模式(Recovery Model) 简介 恢复模式控制以下内容: SQL Server如何记录数据库的事务。 数据库的事务日志是否需要备份。 什么类型的恢复操作可用于恢复数据库。 SQL Server提供了三种恢复模式 简单 完整 大容量日志 创建新数据库时,SQL Se
阅读全文
摘要:#SQL Server系统数据库 简介 默认情况下,SQL Server提供四个主要系统数据库: master msdb model tempdb master master数据库存储SQL Server实例的所有系统级信息,包括: 服务器配置设置 登录帐户 链接的服务器信息 启动存储过程 用户数据
阅读全文
摘要:#SQL Server 触发器(Triggers) 简介 SQLServer触发器是响应数据库对象、数据库和服务器事件自动执行的特殊存储过程。SQL Server提供了三种类型的触发器: 数据操作语言(DML)触发器,用于对表的INSERT、UPDATE和DELETE事件时而自动调用。 数据定义语言
阅读全文
摘要:#SQL Server视图(Views) 简介 当使用SELECT语句查询一个或多个表中的数据时,会得到一个结果集。 比如,返回products和brands表中所有产品的产品名称、品牌和标价: SELECT product_name, brand_name, list_price FROM pro
阅读全文
摘要:#SQL Server表值函数 简介 表值函数是返回表类型数据的用户自定义函数。表值函数的返回类型是表,因此,可以像使用表一样使用表值函数。 创建表值函数 下面的创建了一个表值函数,函数返回产品列表,包括产品名称、年款和特定年款的标价: CREATE FUNCTION udfProductInYea
阅读全文
摘要:#SQL Server (标量函数) 简介 SQL Server标量函数接受一个或多个参数并返回单个值。 标量函数可以简化代码。比如,可能有一个复杂的计算出现在许多查询中。您可以创建一个标量函数来封装公式并在每个查询中使用它,而不是在每个查询都包含公式。 创建标量函数 使用CREATE FUNCTI
阅读全文
摘要:#SQL Server存储过程参数 简介 在上一篇中中,知道如何创建一个简单的存储过程来包装Select语句。当调用此存储过程时,它只需运行查询并返回结果集即可。 本篇将介绍如何向存储过程中传递一些参数,并在存储过程中使用这些参数,然后根据参数返回想要的结果。 创建带一个参数的存储过程 下面查询返回
阅读全文
摘要:SQL Server存储过程的基本指南 简介 SQL Server存储过程将一个或多个T-SQL语句分为逻辑单元。存储过程存储在SQL Server数据库服务器中。 当第一次调用存储过程时,SQL Server会创建一个执行计划并将其存储在缓存中。在存储过程的后续执行中,SQL Server重用该计
阅读全文
摘要:#SQL Server动态SQL 简介 动态SQL是一种可以在运行时动态构造SQL语句的编程技术。因此可以创建更通用、更灵活的SQL语句,因为SQL语句的全文可能在编译时未知。例如,您可以使用动态SQL创建一个存储过程,该存储过程查询一个直到运行时才知道其名称的表的数据。或者是分页存储过程等。 创建
阅读全文
摘要:#SQL Server异常处理 TRY CATCH 简介 TRY CATCH可以很好的处理SQL Server中的异常。要使用TRY CATCH,首先要在BEGIN TRY…END TRY块中放置一组可能导致异常的T-SQL语句,如下所示: BEGIN TRY -- 可能导致异常的语句 END TR
阅读全文
摘要:SQL Server 游标(CURSOR) 简介 SQL基于集合进行操作,例如,SELECT语句返回一组称为结果集的行。但是,有时可能需要逐行处理数据集。这时就需要游标了。 什么是数据库游标 数据库游标是一个可以遍历结果集的行的对象。它允许您处理查询返回的单个行。 SQL Server游标生命周期
阅读全文
摘要:#SQL Server循环 简介 WHILE语句是一个控制流语句,它允许重复执行语句块,只要指定的条件为TRUE。 WHILE 语法: WHILE Boolean_expression BEGIN 语句或语句块--如果是单个语句则可以省略BEGIN...END, END 如果在进入循环时Boolea
阅读全文