当我正在为表建立索引的时候,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...

面试题 相关文章推荐
你所知道的集合类都有哪些?主要方法?
Dec 31 面试题
Java里面如何把一个Array数组转换成Collection, List
Jul 26 面试题
一家外企的面试题目(C/C++面试题,C语言面试题)
Mar 24 面试题
编写类String 的构造函数、析构函数和赋值函数
Sep 09 面试题
Android面试宝典
Aug 06 面试题
一套SQL笔试题
Aug 14 面试题
params有什么用
Mar 01 面试题
一些Unix笔试题和面试题
Sep 25 面试题
如何利用cmp命令比较文件
Sep 23 面试题
介绍一下结构化程序设计方法和面向对象程序设计方法的区别
Jun 27 面试题
J2EE是技术还是平台还是框架
Aug 14 面试题
北京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脚本的10个技巧(2)
2006/10/09 PHP
PHP发明人谈MVC和网站设计架构 貌似他不支持php用mvc
2011/06/04 PHP
php设计模式 Delegation(委托模式)
2011/06/26 PHP
php检测mysql表是否存在的方法小结
2017/07/20 PHP
PHP的mysqli_select_db()函数讲解
2019/01/23 PHP
Jquery 弹出层插件实现代码
2009/10/24 Javascript
前后台交互过程中json格式如何解析以及如何生成
2012/12/26 Javascript
js/jQuery对象互转(快速操作dom元素)
2013/02/04 Javascript
jquery入门——事件机制之事件中的冒泡现象示例解释
2020/09/12 Javascript
jquery实现动态画圆
2014/12/04 Javascript
简介JavaScript中的italics()方法的使用
2015/06/08 Javascript
jQuery实现单击按钮遮罩弹出对话框效果(1)
2017/02/20 Javascript
redux-saga 初识和使用
2018/03/10 Javascript
Vue-cli3项目配置Vue.config.js实战记录
2018/07/29 Javascript
微信小程序使用canvas自适应屏幕画海报并保存图片功能
2019/07/25 Javascript
layui 弹出层值回传解决方式
2019/11/14 Javascript
JavaScript setTimeout()基本用法有哪些
2020/11/04 Javascript
vant 解决tab切换插件标题样式自定义的问题
2020/11/13 Javascript
Python的面向对象思想分析
2015/01/14 Python
用Python的线程来解决生产者消费问题的示例
2015/04/02 Python
python打开url并按指定块读取网页内容的方法
2015/04/29 Python
Python3使用SMTP发送带附件邮件
2020/06/16 Python
Python Django给admin添加Action的方法实例详解
2019/04/29 Python
python time.sleep()是睡眠线程还是进程
2019/07/09 Python
Pytorch evaluation每次运行结果不同的解决
2020/01/02 Python
python全局变量引用与修改过程解析
2020/01/07 Python
python如何从键盘获取输入实例
2020/06/18 Python
Keras中 ImageDataGenerator函数的参数用法
2020/07/03 Python
详解HTML5中div和section以及article的区别
2015/07/14 HTML / CSS
市场部专员岗位职责
2013/11/30 职场文书
优秀班主任先进事迹材料
2014/12/16 职场文书
反腐倡廉观后感
2015/06/08 职场文书
2019数学教师下学期工作总结
2019/06/27 职场文书
创业计划书之孕婴生活馆
2019/11/11 职场文书
Django给表单添加honeypot验证增加安全性
2021/05/06 Python
GTX1650super好不好 gtx1650super显卡属于什么级别
2022/04/08 数码科技