0
点赞
收藏
分享

微信扫一扫

数据库3

在多用户共享的系统中,许多用户可能同时对同一数据进行操作,可能带来数据不一致问题。为了解决这类问题,数据库系统必须控制事务的并发执行,保证数据库处于一致的状态,在并发控制中引入两种锁:排他锁(Exclusive Locks,简称X锁)和共享锁Share Locks,简称S锁)排他锁又称为写锁,用于对数据进行写操作时进行锁定。如果事务T对数据A加上X锁后,就只允许事务T读取和修改数据A,其他事务对数据A不能再加任何锁,从而也不能读取和修改数据A,直到事务T释放A上的锁。共享锁又称为读锁,用于对数据进行读操作时进行锁定。如果事务T对数据A加上了S锁后,事务T就只能读数据A但不可以修改,其他事务可以再对数据A加S锁 来读取,只要数据A上有S锁,任何事务都只能再对其加S锁(读取)而不能加X锁 (修改)

在数据库系统中,如果对数据库的一张表创建聚簇索引,意味着重新确定表中数据的物理顺序,即需要改变的是数据库的内模式。聚簇索引对于那些经常要搜索范围值的列特别有效。使用聚簇索引找到包含第一个值的行后,便可以确保包含后续索引值的行在物理相邻。例如,如果应用程序执行的一个查询经常检索某-日期范围内的记录,则使用聚集索引可以迅速找到包含开始日期的行,然后检索表中所有相邻的行,直到到达结束日期。这样有助于提高此类查询的性能。同样,如果对从表中检索的数据进行排序时经常要用到某一列,则可以将该表在该列上聚簇(物理排序),避免每次查询该列时都进行排序,从而节省成本。

举报

相关推荐

0 条评论