INSERT INTO SELECT FROM 語句的一個除錯
兩個表結構相同,第一個欄位id是自增唯一的,因此不在搬運的欄位列表裡,其他欄位都要複製過去。
先試了:
insert into leather_shoes_attachment_log(parent_id,object_id,attachment_filename,attachment_name,attachment_url,attachment_type,creator,create_time)
select (parent_id,object_id,attachment_filename,attachment_name,attachment_url,attachment_type,creator,create_time)
from leather_shoes_attachment
where object_id ='MODULE_ATTACHMENT_20181102172032'
===================
系統提示:
[SQL]insert into leather_shoes_attachment_log(parent_id,object_id,attachment_filename,attachment_name,attachment_url,attachment_type,creator,create_time)
select (parent_id,object_id,attachment_filename,attachment_name,attachment_url,attachment_type,creator,create_time)
from leather_shoes_attachment
where object_id ='MODULE_ATTACHMENT_20181102172032'
[Err] 1241 - Operand should contain 1 column(s)
===================
然後去掉select 後頭的小括號:
insert into leather_shoes_attachment_log
(parent_id,object_id,attachment_filename,attachment_name,attachment_url,attachment_type,creator,create_time)
select parent_id,object_id,attachment_filename,attachment_name,attachment_url,attachment_type,creator,create_time
from leather_shoes_attachment
where object_id ='MODULE_ATTACHMENT_20181102172032';
===================
就對了。
[SQL]insert into leather_shoes_attachment_log
(parent_id,object_id,attachment_filename,attachment_name,attachment_url,attachment_type,creator,create_time)
select parent_id,object_id,attachment_filename,attachment_name,attachment_url,attachment_type,creator,create_time
from leather_shoes_attachment
where object_id ='MODULE_ATTACHMENT_20181102172032';
受影響的行: 1
時間: 0.003s