积木首页 - 学院 - 软件测试 - 技术百科 - 问答 - 黄页 - 手册 - 站长工具 - 社区
登录 | 注册
积木技术社区 » SqlServer » SQL Server2008 并发控制问题
打印 楼主:糖葫芦 发表于 2011-01-13 10:25 [回复12次/有效11个,浏览535次]

SQL Server2008 并发控制问题 [精]

同时对数据库中的一条数据操作,如何进行并发控制呢?
是不是数据库默认就已经是控制好了啊?
网上有说是事物机制、锁机制什么的,但是,我觉得这个问题如果没次都是自己控制的话,那数据库也太不智能了把?
望大侠赐教~~
2楼 发表于 2011-01-13 10:53
如果是这样的话,那另外那个不能读取和修改的,那个是在等待呢?还是返回错误呢?
3楼 发表于 2011-01-13 11:13
只能一个修改,另一个已经没权限读取了,和谈修改
4楼 发表于 2011-01-13 11:24
情况比较复杂
比方说 如果没有加锁 你在 12点 从数据库中取出了一条记录。
另一个用户在 12点1分的时候修改了此记录。你读出的数据就是脏数据了
5楼 发表于 2011-01-13 11:48
复杂情况就得在程序中自己考虑 加锁了
6楼 发表于 2011-01-13 12:13
等待,可以设置超时时间。
7楼 发表于 2011-01-13 12:36
MSSQL有默认的隔离级别为读已提交,可以指定当前连接隔离级别,也可以在读取时指定加特定类型和特定范围的锁。
8楼 发表于 2011-01-13 13:04
楼上正解
9楼 发表于 2011-01-13 13:43
能否举个例子,如何设置超时时间?? 谢谢。
10楼 发表于 2011-01-13 13:54
我现在觉得,数据库默认情况下的那个级别,就挺好的。关键是,我不知道,这个级别下,如果两个用户同时操作时,数据库是如何进行操作的呢?
11楼 发表于 2011-01-13 14:53
我就是想问,如果,两个用户同时修改一个记录,默认情况下,数据库是如何来处理的呢?
12楼 发表于 2011-01-13 15:11
是在程序中访问数据库中的记录吗?
数据库有自己的加锁访问机制。
标题:
内容:

PHP: PHP技巧 - PHP基础 - PHP实例 - PHP错误代码 - 正则表达式 - 热门脚本语言: DOS命令 - vbs - CSS/HTML - python - perl - ruby - shell编程 - Powershell

JS: node.js - JS基础 - extjs - jQuery - JavaScript技巧

网址导航成语大全积木 TinyMCE 服务邮箱: Gimoohr(#)gmail.com
Copyright © 2008 Gimoo.Net  京ICP备05050695号