我有一个用于存储状态和注释的表。还有一些列。现在每次发布一个新注释我需要在该表中插入一个新行(更改仅在注释字段,状态和所有其他列值将保持原样)。这样做的最佳方式是什么?
答案 0 :(得分:3)
假设您正在使用某种SQL方言,您可以执行以下类似的操作:
INSERT INTO table (comment, otherCol1, otherCol2, otherCol3)
SELECT 'Some comment', otherCol1, otherCol2, otherCol3 FROM table
WHERE id=existingRowId;
这将插入一个新行,其中包含注释“Some comment”以及从现有行复制的(otherCol1,otherCol2,otherCol3)的值。现有行不会被删除。
这是你要求的吗?
答案 1 :(得分:1)
最好的方法是将此表拆分为2个表。一个表用于存储所有记录(具有ID值)的常用值,另一个表用于存储第一个表中的Comment,Status和ID值。它的标准化设计满足您的要求。