跨MySQL数据库同一台机器INSERT语法失败

时间:2013-11-24 11:09:54

标签: mysql database

我一直在努力在同一台机器上迁移不同的mysql数据库。我想将名为ms_barang的表中的所有行从第一个数据库复制到另一个数据库。

列有点不同所以,我创建连接表并插入到不同数据库中的第二个表。

我的SQL语法是

 INSERT INTO sre.`ms_barang`(`idms_kodebarang`,`nama`,`gudang`,`jenis`,`packing`) 
 VALUES (
     SELECT sr.mb.`idms_kodebarang` AS 'idms_kodebarang', sr.mb.`nama` AS 'nama', sr.mb.`gudang` AS 'gudang', sr.mb.`jenis` AS 'jenis', sr.md.`packing` 'packing'
     FROM sr.ms_barangjadi mb JOIN sr.ms_daftarbarang md
     WHERE sr.mb.`idms_kodebarang` = sr.md.`idms_kodebarang`
  );

如您所见,有两个名为SR和SRE的数据库

但它一直告诉语法失败。错误在哪里?

1 个答案:

答案 0 :(得分:0)

删除VALUES关键字Doc

    INSERT INTO sre.`ms_barang`(`idms_kodebarang`,`nama`,`gudang`,`jenis`,`packing`) 
  (
     SELECT sr.mb.`idms_kodebarang` AS 'idms_kodebarang', sr.mb.`nama` AS 'nama', sr.mb.`gudang` AS 'gudang', sr.mb.`jenis` AS 'jenis', sr.md.`packing` 'packing'
     FROM sr.ms_barangjadi mb JOIN sr.ms_daftarbarang md
     WHERE sr.mb.`idms_kodebarang` = sr.md.`idms_kodebarang`
  );