Welcome 微信登录

首页 / 数据库 / SQLServer

SQL Server中的执行引擎入门 图解

SQL Server中的执行引擎入门 图解

本文旨在分类讲述执行计划中每一种操作的相关信息。 数据访问操作 首先最基本的操作就是访问数据。这既可以通过直接访问表,也可以通过访问索引来进行。表内数据的组织方式分为堆(Heap)和B树,其中表中没有建立聚集索引时数据是通过堆进行组织的,这个是无序的,表中建立聚集索引后和非聚集索引的数据都是以B树方式进行组织,这种方式数据是有序存储的。通常来说,非聚集索引仅仅包含整个表的部分列,对于过滤索引,还仅仅包含部分行。 除去数据的组织方式不同外,访问数据也分为两...
浅谈SQL Server中统计对于查询的影响分析

浅谈SQL Server中统计对于查询的影响分析

而每次查询分析器寻找路径时,并不会每一次都去统计索引中包含的行数,值的范围等,而是根据一定条件创建和更新这些信息后保存到数据库中,这也就是所谓的统计信息。 如何查看统计信息 查看SQL Server的统计信息非常简单,使用如下指令: DBCC SHOW_STATISTICS("表名","索引名")所得到的结果如图1所示。 图1.统计信息统计信息如何影响查询 下面我们通过一个简单的例子来看统计信息是如何影响查询分析器。我建立一个测试表,有两个INT值的...
MSSQL安全设置的具体步骤和方法小结

MSSQL安全设置的具体步骤和方法小结

第一步肯定是打上SQL SERVER最新的安全补丁.如果这一步都没有做好,那我们也没有继续下去的必要了。 第二步是修改默认的1433端口,并且将SQL SERVER隐藏。这样能禁止对试图枚举网络上现有的 SQL Server 客户端所发出的广播作出响应。另外,还需要在TCP/IP筛选中将1433端口屏蔽掉,尽可能的隐藏你的SQL SERVER数据库。这样子一但让攻击创建了SQL SERVER的账号,也不能马上使用查询分析器远程登陆来进行下一步的攻击。单从A...
T-SQL问题解决集锦 数据加解密全集

T-SQL问题解决集锦 数据加解密全集

以下代码已经在SQLServer2008上的示例数据库测试通过问题一:如何为数据进行加密与解密,避免使用者窃取机密数据? 对于一些敏感数据,如密码、卡号,一般不能使用正常数值来存储。否则会有安全隐患。以往的加密解密都有前端应用程序来辅助完成。而数据库一般只能加密不能解密。 从2005开始提供了数据库层面的数据加密与解密。其实现方式主要有以下: 1、 利用CONVERT改变编码方式: 利用该函数把文字或数据转换成VARBINARY。但该方式不具备保护数据的能...
SQL Server 日期相关资料详细介绍

SQL Server 日期相关资料详细介绍

一、日期类型:对于SQL Server 2008 来说(因为2000甚至2005已经稍微有被淘汰的迹象,所以在此不作过多说明,加上自己工作使用的是2008R2。所以不保证08以前的能用),日期类型有:数据类型格式范围精确度存储大小(以字节为单位)用户定义的秒的小数精度时区偏移量timehh:mm:ss[.nnnnnnn]00:00:00.0000000 到 23:59:59.9999999100 纳秒3 到 5是否dateYYYY-MM-DD0001-01...
设置SQLServer数据库中某些表为只读的多种方法分享

设置SQLServer数据库中某些表为只读的多种方法分享

一般情况下会有几种情况需要你把数据库设为只读: 1. Insert,Update,Delete 触发器 2. Check 约束 和 Delete 触发器 3. 设置数据库为只读 4. 把表放到只读文件组中 5. 拒绝对象级别权限 6. 创建视图 在开始之前,先创建一个数据库及表作为示例: 复制代码 代码如下: create database MyDB create table tblEvents ( id int, logEvent varchar(100...
SQL Server 数据库索引其索引的小技巧

SQL Server 数据库索引其索引的小技巧

一、什么是索引 减少磁盘I/O和逻辑读次数的最佳方法之一就是使用【索引】 索引允许SQL Server在表中查找数据而不需要扫描整个表。 1.1、索引的好处: 当表没有聚集索引时,成为【堆或堆表】 【堆】是一堆未加工的数据,以行标识符作为指向存储位置的指针。表数据没有顺序,也不能搜索,除非逐行遍历。这个过程称为【扫描】。当存在聚集索引时,非聚集索引的指针由聚集索引所定义的值组成,所以聚集索引变得非常重要。 因为页面大小固定,所以列越少,所能存储的行就越多。...
分享整理的12条sql语句连同数据

分享整理的12条sql语句连同数据

俺觉得自 己试着写写sql,调试调试还是有帮助的,读人家sql例子好像读懂了,自己写就未 必思路正确,调试得通,写得简洁。 跟着网上流行的学生选课表的例子复习了一下: http://www.jb51.net/article/30655.htm 这篇文字在网上被转载烂了,里面有些sql适合用在应用系统里,有些“报表”的感 觉更重些,主要是想复习前者。前20条大体还挺好,后30条明显偏报表风格了,而 且后面选例良莠不齐,选了12个例子做练习,(其实很多语法,c...
SQLServer 2005 实现数据库同步备份 过程-结果-分析

SQLServer 2005 实现数据库同步备份 过程-结果-分析

数据库复制: 简单来说,数据库复制就是由两台服务器,主服务器和备份服务器,主服务器修改后,备份服务器自动修改。 复制的模式有两种:推送模式和请求模式,推送模式是主服务器修改后,自动发给备份服务器,请求模式是,备份服务器自动去请求,个人开始也比较重视去测试两个模式的差别,但是测试发现,其实两个模式差别不是很大,在当今的服务器配置中,没必要考虑这么多,虽然会有一些差别,但是可在可以忽略的范围之内,建议直接选择推送模式,因为配置起来相对简单 数据库发布类型有三种...
数据库复制性能测试 推送模式性能测试

数据库复制性能测试 推送模式性能测试

数据库复制就是由两台服务器,主服务器和备份服务器,主服务器修改后,备份服务器自动修改,在以前的文章中已经做了详细的说明,这里就不在重复,具体请参见 http://www.jb51.net/article/30661.htm使用了数据库复制的人,首先担心的就是主服务器和备份服务器的性能消耗问题,本人也是对此十分担忧,查了半天,基本上没发现类似的测试说明,就自己测试了一下,下面为测试的结果,仅供参考 我采用的是数据库推送的复制模式,下面测试页是基于此模式 因为...
SQL Server 复制需要有实际的服务器名称才能连接到服务器

SQL Server 复制需要有实际的服务器名称才能连接到服务器

今天在做sql Server 2005的实验的时候碰到的问题,问题描述很清楚,怀疑是我以前给计算机修改了名称而导致的.可以用select @@servername和select serverproperty ("servername")对照一下,两个的结果是否一样,不一样就会出现问题,以下给出解决的SQL脚本 复制代码 代码如下: if serverproperty("servername") <> @@servername begin dec...
SQL Server 作业的备份(备份作业非备份数据库)

SQL Server 作业的备份(备份作业非备份数据库)

作业备份,不是备份数据库,是备份作业。 我的方法是把作业导出成文件备份起来,因为当你服务器维护的多了的时候很多你的作业 就很成问题,很麻烦。 最好能够作业实现同步,这个也是第一步,保存成文件,之后个人设想使用powershell 来把作业同步起来 复制代码 代码如下: DECLARE @jobname VARCHAR(30),@category_calss_i INT ,@category_calss VARCHAR(50),@category_name ...
<< 271 272 273 274 275 276 277 278 279 280 >>