我正在为我的网站进行第一次巨型更新。它有一个现有的帖子表。如果我在表中添加两列,我是否可以将旧数据导入更新的表?
编辑:我的意思是专栏。糟糕。答案 0 :(得分:4)
你的意思是两列?如果它们可以为空,那么您应该能够导入不包含这些列的旧数据。您只需要仔细编写插入语句,确保指定要插入的确切列。这是一个很好的做法,无论如何都应该这样做(感谢Bruno的提示)。
示例:
INSERT INTO table1 (Col1, Col2, Col3)
SELECT Col1, Col2, Col3
FROM sourceTable
而不是
INSERT INTO table1
SELECT *
FROM sourceTable
如果两个新列不可为空,那么您可以尝试使用文字附加一些虚拟数据,以使插入生效。
示例:
INSERT INTO table1 (Col1, Col2, Col3, NewCol1, NewCol2)
SELECT Col1, Col2, Col3, '', ''
FROM oldDataTable
或者您可以创建一个默认约束,它也可以正常工作。
答案 1 :(得分:0)
首先导入数据,然后添加新列。 或者您可以插入两列,注意它们不能为空,然后导入旧数据
答案 2 :(得分:0)
我假设你的意思是你在表中添加两列?
是的,您应该能够使用INSERT
语句插入现有数据,因为新列可以为空,或者为这些列设置默认值。