2013-06-24 78 views
1

這一個真的讓我感到困惑。我試圖創建一個MySQL查詢,我可以將信息填充到列表中然後導出到SQLite中。除了SELECT語句來自information_schema之外,我可以填充任何我想要的內容。 COLUMNS無法使用SELECT進行INSERT INTO,其中SELECT爲`information_schema`.`COLUMNS`

這裏有一個簡單的例子來測試。我在一個調用的模式中創建了一個名爲TestTbl的表,並給了它兩行。第一個是AUTO INCREMENT INT ID行,第二個是varchar 100行,名爲Namedb。然後我運行以下查詢。

INSERT INTO `tblinfoetc`.`testtbl` (Namedb) 
SELECT 
    `COLUMNS`.`TABLE_SCHEMA` AS `Namedb` 
FROM 
    `information_schema`.`COLUMNS`; 

我這樣做後,信息是:

Affected rows: 0 
Time: 0.000s 

如果我運行這個沒有INSERT INTO線,它返回的記錄順利。有任何想法嗎?

回答

0

這更是一個解決辦法的建議不能真正解決問題的:

從INFORMATION_SCHEMA.COLUMNS選擇工作得很好,所以儘量在兩個步驟做操作。首先,使用客戶端接口複製數據,然後將其插入客戶端的目標表中。

我在運行mysql 5.6.13的windows計算機上遇到了同樣的問題。該查詢用於使用mysql 5.5。這可能與此其他issue