我正在编写一个访问数据库的程序,以确保值是最新的。例如(这不是我真正的问题),我有一个具有唯一属性的对象。我想确保数据库保存了相同的唯一值。如果没有,我想更新数据库。这将发生在重复运行的脚本中,以确保值保持同步。
所以我的问题是,选择值并比较然后更新是否更具成本效益。或者我应该自动更新?
我认为SELECT和compare可能比一直更新更有效,但我不确定。
我应该选择哪个?
谢谢(如果这是一个愚蠢的问题,我道歉。)
答案 0 :(得分:2)
我想你只需一次UPDATE...WHERE
SQL调用即可完成此操作,而无需进行SELECT
调用。这是最快的方法。
UPDATE <table>
SET <data to update>
WHERE <data is not up to date)
答案 1 :(得分:1)
这是一个很好的问题。它需要熟练掌握SELECT和UPDATE查询。
当您需要使用WHERE更新表中的现有记录时,将使用UPDATE来指定需要更新的记录。所以最好使用UPDATE查询。
就成本和时间有效而言,您可以使用不同的查询分析器来分析查询。
UPDATE table_name
SET value to update
WHERE some condition to update