当我正在为表建立索引的时候,SQL Server 会禁止对表的访问吗


Posted in 面试题 onApril 28, 2014
答:在您建立索引时,SQL Server 不会禁止您对表进行读访问,除非您正在建立一个簇索引。然而,如果某人此时试图更新表中的数据,SQL Server 会禁止更新操作 – 不管您正在创建什么样的索引类型 – 因为您不能取得表级别的独占锁(IX lock)。独占锁会和Create INDEX 语句持有的共享锁发生冲突。

当SQL Server 完成了建立索引的操作后,它必须修改系统表来反映数据表的变化;两个最主要被修改的系统表是sysindexes 和 sysobjects 表。因为您没有使用“normal”SQL来建立索引,所以您不能对SQL Server的操作进行跟踪。

在最后一个阶段, 独占锁(IX lock)并不出现在数据表中,而是出现在系统表正在建立索引的相应数据表项上。 一般来说,最后这个阶段比较短,因为SQL Server已经对数据进行了排序并抽取了行指针(物理行定位符或簇索引键)。唯一剩下的任务就是修改系统表,这个过程很快。如果系统表上的独占锁还在,您不能执行任何查询操作,因为您不能从sysindexes 和 sysobjects系统表中读取出所需要的信息。

Tags in this post...

面试题 相关文章推荐
如何用PHP实现邮件发送
Dec 26 面试题
面向对象编程OOP的优点
Jan 22 面试题
构造器Constructor是否可被override?
Aug 06 面试题
什么造成了Java里面的异常
Apr 24 面试题
JAVA和C++的区别
Oct 06 面试题
"火柴棍式"程序员面试题
Mar 16 面试题
C/C++程序员常见面试题二
Nov 19 面试题
浙大网新C/C++面试解惑
May 27 面试题
广州一家公司的.NET面试题
Jun 11 面试题
盛大二次面试题
Nov 18 面试题
西安当代医院管理研究院笔试题
Dec 11 面试题
what is the difference between ext2 and ext3
Nov 03 面试题
北京SQL新华信咨询
Sep 30 #面试题
如何在发生故障的节点上重新安装 SQL Server
Mar 14 #面试题
SQL Server 2000数据库的文件有哪些,分别进行描述
Mar 30 #面试题
杭州SQL浙江浙大网新恩普软件有限公司
Jul 27 #面试题
为什么在使用动态 SQL 语句时必须为低层数据库对象授予权限
Dec 13 #面试题
SQL Server的固定数据库角色都有哪些?对应的服务器权限有哪些?
May 18 #面试题
SQL Server面试题
Oct 17 #面试题
You might like
PHP MemCached 高级缓存应用代码
2010/08/05 PHP
thinkphp 多表 事务详解
2013/06/17 PHP
thinkphp跨库操作的简单代码实例
2016/09/22 PHP
PHP使用strrev翻转中文乱码问题的解决方法
2017/01/13 PHP
JavaScript中的私有成员
2006/09/18 Javascript
Array.prototype.slice.apply的使用方法
2010/03/17 Javascript
Javascript 面向对象 命名空间
2010/05/13 Javascript
js中eval详解
2012/03/30 Javascript
jqGrid增加时--判断开始日期与结束日期(实例解析)
2013/11/08 Javascript
Javascript中判断对象是否为空
2015/06/10 Javascript
jquery实现美观的导航菜单鼠标提示特效代码
2015/09/06 Javascript
jQuery插件开发精品教程(让你的jQuery更上一个台阶)
2015/11/07 Javascript
快速使用Bootstrap搭建传送带
2016/05/06 Javascript
浅析JavaScriptSerializer类的序列化与反序列化
2016/11/22 Javascript
详解JS中定时器setInterval和setTImeout的this指向问题
2017/01/06 Javascript
ionic 3.0+ 项目搭建运行环境的教程
2017/08/09 Javascript
Node.js 中使用 async 函数的方法
2017/11/20 Javascript
仿京东快报向上滚动的实例
2017/12/13 Javascript
js操作二进制数据方法
2018/03/03 Javascript
修改vue+webpack run build的路径方法
2018/09/01 Javascript
使用 webpack 插件自动生成 vue 路由文件的方法
2019/08/20 Javascript
Python中取整的几种方法小结
2017/01/06 Python
python测试mysql写入性能完整实例
2018/01/18 Python
Linux下python3.6.1环境配置教程
2018/09/26 Python
numpy基础教程之np.linalg
2019/02/12 Python
浅析PEP572: 海象运算符
2019/10/15 Python
Python对Excel按列值筛选并拆分表格到多个文件的代码
2019/11/05 Python
CSS3教程(9):设置RGB颜色
2009/04/02 HTML / CSS
websocket+sockjs+stompjs详解及实例代码
2018/11/30 HTML / CSS
Html5 APP中监听返回事件处理的方法示例
2018/03/15 HTML / CSS
美国校园市场:OCM
2017/06/08 全球购物
后勤副校长自我鉴定
2013/10/13 职场文书
培训自我鉴定
2014/01/31 职场文书
运动会闭幕式解说词
2014/02/21 职场文书
2014年乡镇安全生产工作总结
2014/12/02 职场文书
React四级菜单的实现
2022/04/08 Javascript