在Sybase中,如果表是数据行、页或表锁,我可以为它指定锁定模式。下面是SYBASE中如何创建具有指定锁表的表的示例。
create table dbo.EX_EMPLOYEE(
TEXT varchar(1000) null
)
alter table EX_EMPLOYEE lock allpages
go在server中有这样的锁表(请回答),但是我可以为表指定锁吗?
我的问题是:我可以指定锁的表类型吗?或者在SQL server中它是不同的?这取决于我运行的查询吗?
在这个链接中,它说:
正如Andreas所指出的,没有默认的锁定级别锁是按照您试图在数据库中执行的操作进行的。只是一些例子。如果是针对特定行的删除/更新,则将在该行上采取独占锁,如果是select操作,则将采取共享锁,如果它被更改,表模式模式锁将很快采取,以此类推,正如Jeremy指出的,如果您正在寻找隔离级别,则读取已提交。
他们是对的吗?我可以说Sybase中的锁定表与SQL server不同吗?
发布于 2017-10-25 13:07:38
锁定机制是不一样的,但在Server中确实有一些用于锁定的控件--例如,可以在查询中指定with rowlock、with paglock或with (tablockx)来获取独占表锁。
就像所有这样的锁,当你控制-你必须承担责任,你可能造成的阻塞-所以要小心使用。
包含完整描述的文档:https://learn.microsoft.com/en-us/sql/t-sql/queries/hints-transact-sql-table
https://stackoverflow.com/questions/46932596
复制相似问题