Excel数据连接可以锁定数据库表吗?

时间:2009-01-18 16:02:55

标签: sql-server database excel

如果我将一个简单的Sql Server表数据连接添加到Excel工作表,如果连接永远不会关闭,它是否可以锁定该表?

3 个答案:

答案 0 :(得分:1)

通常的答案:是的,但这取决于情况......

..主要取决于您的数据库采用何种锁定策略(同样取决于配置)。我的假设是Excel会打开与数据库的“常规”连接。如果你现在查询一个表,如果你有悲观的锁定策略,那可能已经锁定了表。

希望这会有所帮助..有很多关于锁定的信息与许多数据库系统有关。

答案 1 :(得分:1)

虽然我认为可以锁定表格,但我会说Excel通常不会,因为您只选择数据。如果您尝试更新某些内容,请确保您将锁定基础表,但只要您只查看数据,就应该没问题。

为了确保,为什么不在系统中较少用户的表上进行某些测试,或者在另一个配置相同方式的数据库中的表中呢?然后,您可以在SQL Server上使用SP_LOCK来查看Excel连接是否已锁定表,或者您可以尝试对表执行另一个查询以查看它是否被阻止。

答案 2 :(得分:1)

在微软论坛上提出了类似的问题。根据该帖子,默认情况下,Excel会请求对表中的行进行完全锁定。所以,是的,它可以锁定表格。

MSDN文章讨论了SQL 2005中可用的各种隔离级别,因此如果您运行该版本,这可能会很有用。

Similar Question on MSDN

Isolation levels at MSDN

More info on isolation levels