2016-02-15 36 views
0

我當前正在將多個表從不同的mysql模式複製到一個表中。在嘗試複製所有條目時,我遇到了將「插入」到臨時表中的問題。將所有條目從一個表複製到另一個具有硬編碼值的條目

cua010.doc_table

| ID | _FilePath |

testing.temp_entries

| ID |文件|架構|

這裏是我的查詢

INSERT INTO testing.temp_entries (File, Schema) 
SELECT _FilePath, 'CU010' 
FROM cua010.doc_table 

最後,我想結果是

| ID |文件|架構|

| 1 |測試| cua010 |

| 2 | TEST2 | cua010 | ...

這是錯誤消息我得到

0 84 14點49分47秒INSERT INTO testing.temp_entries(文件,架構) SELECT _FilePath, 'cua010' FROM cua010.doc_table錯誤代碼:1064.您在SQL
語法中有錯誤;檢查對應於你的MySQL服務器版本 使用近「的架構) SELECT _FilePath,‘cua010’ FROM cua010.doc_table」在1號線0.031秒

回答

1

使用「`」,圍繞正確的語法手冊架構(Windows中的alt + 96)

INSERT INTO testing.temp_entries (File, `Schema`) 
    SELECT _FilePath, 'cua010' 
    FROM cua010.doc_table ; 
+0

模式是一個關鍵字,你必須用back ticks'schema'來轉義它 –

+0

我建議使用適當的引號「'」 – scaisEdge

1

架構是一個保留字。

INSERT INTO `testing`.`temp_entries` (`File`, `Schema`) 
SELECT `_FilePath`, 'CU010' 
FROM `cua010`.`doc_table` 
相關問題