【发布时间】:2012-10-18 22:29:03
【问题描述】:
我目前正在运行 Microsoft SQL Express Server。 当一个用户执行查询而不提交它时,它会锁定整个表。 问题是恶意用户可能会故意“破坏”数据库。 我怎样才能防止这种情况发生?
【问题讨论】:
-
需要更多信息。它是什么类型的查询?他们如何在不提交的情况下运行查询?
-
他们使用 pyodbc,执行 res = con.execute('insert into mytable...'),此时表被锁定,直到他们 res.commit()。
-
这是程序员还是用户锁表?在调用 commit 之前,您是否在等待用户执行操作?
-
这些是程序员,他们可以随时决定锁定该表。是否可以在表上设置锁定超时或类似的东西?
标签: sql sql-server locks