行锁定,具有到表锁的升级。
同样,页锁始终升级到表锁。
使用表锁选项与快速加载目的地的后果是什么?
What are the consequences of using the table lock option with a fast load destination?
当获得少量的行锁时,行锁就会自动地逐渐升级为表锁。
After some small number of row locks are obtained, a lock escalation to a table lock will occur automatically.
如果知道独占访问不会导致问题,那么就应该尽量使用表锁。
If you know that exclusive access will not cause problems, by all means use table locking.
减少锁管理器的hash表中对行和表锁的虚假锁竞争。
Reduction in false lock contentions for row and table locks in the lock manager's hash table
上述比较表明,使用表锁而不是行锁可以节省大约3%的耗时。
The above comparison shows that causing table locks to be used instead of row locks saved about 3% in elapsed time.
数据库引擎将选择相应的锁,并且可以将锁从行锁或页锁升级到表锁。
The Database Engine chooses the appropriate lock and can escalate the lock from a row or page lock to a table lock.
对于每个新行之上的锁,惟一可以替代的是表锁(DB 2中没有页锁)。
The only alternative to a lock on every new row is a table lock (since there are no page locks in DB2).
线程获得了表锁,但是在取得表锁之后才发现该表的底层结构已经发生了变化。
The thread got a lock for the table, but noticed after getting the lock that the underlying table structure changed.
如果用一个表锁替换这些行锁,将不再会超出maxlocks值,那么锁升级就会停止。
If after replacing these with a single table lock, the MAXLOCKS value is no longer exceeded, lock escalation stops.
因此,您可以通过表锁或数据库中的其他同步字段来解决这个问题,以确保不会出现重复项。
So, you can address this with perhaps a table lock, or some other syncing field in the database to ensure duplicates don't appear.
另外,应用程序间可能会发生更多死锁(因为它们都等待数量有限的表锁),这会导致事务被回滚。
Additionally, there may be more deadlocks between applications (because they are all waiting on a limited number of table locks), which will result in transactions being rolled back.
这将导致DB 2为随后使用该表的所有sql语句使用一个表锁,直到locksize参数改回到ROW。
This causes DB2 to use a table lock for all subsequent SQL statements using the table, until the locksize is changed back to ROW.
锁维护空间不足可能会导致所谓的“锁提升”,其中,行锁被提升为不必要的表锁,这甚至可能会导致死锁情况。
Shortages in the lock maintenance space can lead to so-called lock escalations, in which row locks are escalated to undesirable table locks, which can even lead to deadlock situations.
因为获得的锁不会跨事务边界存在,所以import工具将失去它的IX表锁,并且必须在每次提交之后请求另一个锁。
Because the acquired lock does not persist across transaction boundaries, the import utility loses its IX table lock and must request another lock after each commit.
然后,获得一个锁,以便在访问接口注册表之前保护它。
It then holds a lock to protect the interface registry before accessing it.
对于包含多个表的表空间,当DB 2取得用于某一个表的锁时,这个锁不会影响对其他表的段的访问。
For table Spaces containing more than one table, when DB2 acquires locks on a table, that lock does not affect access to segments of other tables.
当表持有z锁时,任何并发应用程序都不能读取和更新该表中的数据。
When a table holds a Z lock, no concurrent application can read or update data in that table.
然而,对于表扫描,块锁不会推迟。
大容量更新锁:在向表进行大容量数据复制且指定了TABLOCK提示时使用。
Bulk Update Locks: Used when bulk-copying data into a table and the TABLOCK hint is specified.
数据库管理器通过查看应用程序的锁列表并查找行锁最多的表,来决定对哪些锁进行升级。
The database manager determines which locks to escalate by looking through the lock list for the application and finding the table with the most row locks.
基表上不需要额外的锁,因为复制只分析日志文件,而不是分析基表。
No extra locking is required on the base tables as replication only analyzes the log files and not the base tables.
上面的示例演示如何在锁表中填充两个全文索引资源。
The example above shows how to fill the lock table for two full-text index resources.
并发控制支持表级和行级锁。
还可以使用其他命令解压表、控制压缩期间的锁和显示节省的空间量。
There are other commands that can be used to uncompress tables, control locking while compressing, and to display space savings.
如果您尝试修改一个表,以便使用这种锁粒度选项,而那个表又不是mdc表,那么您将收到一个SQLSTATE 628n错误。
If you attempt to alter a table to use this lock size option, and it isn't an MDC table, you will receive an SQLSTATE 628n error.
当扫描一个mdc表时,对于索引扫描,块锁可以推迟。
When scanning an MDC table, block locking could be deferred for an index scan.
当表持有IX锁时,锁拥有者和并发应用程序可以读和更新该表中的数据。
When a table holds an IX lock, the lock owner and concurrent applications can read and update data in that table.
支持表级和行级锁。
应用推荐