【发布时间】:2017-10-09 15:37:56
【问题描述】:
这可能是一个愚蠢的问题,我明白为什么我会得到我现在的结果,但是,我认为 mySQL 的行为不同,我无法完成文档来告诉我其他情况。
我有 2 个基本表如下:
CREATE TABLE test ( num INT, time TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP );
CREATE TABLE test_to_copy ( num INT );
然后我在 test_to_copy 表中创建一个条目:
INSERT INTO test_to_copy VALUES ( 12 );
现在我尝试复制表 test_to_copy 以进行测试,如下所示:
INSERT INTO test SELECT * FROM test_to_copy;
不断抛出的错误是
“列计数与第 1 行的值计数不匹配”。
我知道它抱怨两个表中的列数不匹配,这意味着它不知道我们将副本分配给哪个变量,但是,如果不是自动创建时间的情况,即默认值如果我们在进行复制时没有插入任何内容而不是抛出错误?
由于限制,我不能再有时间在两个表中,我必须在 test_to_copy 表上执行 SELECT *,因为有超过 50 列,我想知道有没有简单的方法解决这个问题?
【问题讨论】: