我有SQL文本“从table1中select * with(nolock)”。

两个问题:

  1. 如何使我的ta tadoquery使用nolock提示而不必将其包含在SQL文本中?我实际上有成千上万的tadoquery,他们的SQL构建了他们的SQL,并且很难将(Nolock)添加到所有这些方面,更不用说我将与MSSQL以外的数据库平台一起使用了。有tadoquery物业吗?

  2. 如何用ta缩得起同一件事? Tadotable's没有任何SQL,那么我该如何告诉它使用Nolock提示?

谢谢

有帮助吗?

解决方案

如果使用MS SQL,请在连接上运行以下语句

设置交易隔离级别读取未投入

欢呼

其他提示

提示是特定于数据库的,因此您必须为支持的每个数据库发布适当的数据库。在某些数据库中,也没有什么等效的,例如,Oracle不允许任何东西(读者永远不会阻止作家和作家永远不会阻止读者,因此无需)。

恕我直言,您根本不应该使用tadotable组件 - 无论如何,您无法为生成的查询指定提示 - 无论如何,这太通用了。

你也应该 非常 小心使用诺洛克。这意味着阅读毫无疑问,又名 肮脏的阅读. 。您正在绕过交易保护,除非您有充分的理由绕过它,否则您不应该这样做 - 绩效增长可能不值得数据完整性和一致性损失。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top