我这种情况需要新建个表吗,可以提高性能吗
我有个用户表,其中有个字段更新特别频繁,而其他的字段基本不怎么更新,如果我把这个字段单独拿出来做一个表,然后关联,是否可以大幅度提高用户表的查询速度,因为更新这个字段会加排他锁,是不是必须等解锁了才能查?
[解决办法]
有更新就申请排他锁
在一个更新的事务没有结束排他锁就一直存在
如果可以接受脏读可以用nolock 不会产生共享锁
或者采用快照隔离的事务不会产生堵塞
[解决办法]
如果要查你正在更新的用户,你没通过其他的来限制,在默认级别是不能查的,
[解决办法]
申请排他锁
[解决办法]
如果你新建的表不是用来查询的 ,那么系统的查询性能会有一点改善。
建议的做法是加索引、加内存、查询使用nolock、update使用行级锁、sql语句优化等。