2016-10-05 38 views
1

我想將所有數據從一個模式(a)複製到另一個(b)。 兩個模式具有相同的結構。如何通過MySQL查詢將所有數據從一個模式插入到另一個模式?

我用

Insert into a.table1 select * from b.table1; 

但也有一個254個表,列出他們非常沮喪。

你有更好的解決方案嗎?

感謝

+2

一個快速的解決方法是用select語句創建插入語句:SELECT'INSERT INTO a'。 || table_name || 'SELECT * FROM b'。 || table_name || ';' FROM information_schema.tables WHERE table_schema ='a'; –

+1

那麼你可以隨時嘗試提供的實用程序[mysqldbcopy](https://dev.mysql.com/doc/mysql-utilities/1.5/en/utils-task-clone-db.html) – RiggsFolly

回答

1

2個選項...

1)通過的結果,使用動態SQL循環:該查詢的

select TABLE_NAME from information_schema.tables

2)輸出結果到Excel,建立你的插入,然後在一個大的舊proc中運行它們。

+0

您可以使用CONCAT直接使用SQL構建語句,不需要Excel。 –

+0

@ R.Chappell從這裏開始又走了一步,你已經有了一個動態SQL過程...沒有意義,但我明白了你的觀點 – JohnHC

相關問題