我读到了
“当多个用户需要同时访问数据库时会发生锁定。”,(参考)
或者
“存在数据库锁是为了防止两个或多个数据库用户在同一时间更新相同的确切数据”-(参考)。
不过,我不明白发生数据库锁定时哪些数据被锁定。
第一个例子,两个用户同时运行 sql 来选择多行。用户 1 先走。
用户 1:select * from products where price > 100;
用户 2:select * from products where price < 100;
用户 1 查询会为用户 2 锁定数据库吗?
第二个示例,用户 1 想要更新产品表。用户 2 想要从产品表中选择数据。用户 1 先走。用户 1 的操作会为用户 2 锁定数据库吗?
谢谢!