删除/插入有时可能比数据库记录更新更好吗?

时间:2013-06-13 17:49:26

标签: database

我有一个人们创建管道订单的网页。

订单存储在下表中:

  • 订购运输/客户信息。
  • REQUESTED_PIECE,每个订单可以包含许多记录。
  • 每个订单也可包含许多记录的分配。
  • 每个ASSIGNMENT可以包含许多记录的CUT

当你去编辑其中一个时,所有这些信息都放在一个页面上进行编辑。

当用户点击完成时,在我看来,处理此问题的唯一方法是删除旧订单的所有记录并重新插入新内容。关于删除和重新插入的事情似乎对我来说是不好的做法所以我想知道我是否遗漏了一些东西。

2 个答案:

答案 0 :(得分:1)

您应该使用UPDATE

UPDATE table_name
SET column1=value1,column2=value2,...
WHERE some_column=some_value;

更新记录时要小心。如果我们省略了WHERE子句(或者在其中犯了错误),您可以更新表中的所有记录而不是您想要更新的记录。

您可能想要删除并插入新记录的一个原因是为该记录提供一个新的主键(如果它是自动递增的)。你应该小心这样做,因为它会搞乱使用这个主键的其他表中的任何外键

答案 1 :(得分:1)

我在我的网站遇到了同样的问题,我的解决方案是在我填充隐藏输入或会话变量中的字段时获取表的ID,所以当某些内容发生变化时,我只会通过提供存储来更新我的数据库ID。希望它有所帮助。