0

私が達成しようとしていること。 私のサイトはライブで、いくつかの変更を加えています。変更を反映する準備が整ったら、基本的に古いデータベース (myFirstDb) を削除し、新しいデータベース (mySecondDb) を作成します。しかし、ライブ サイト (myFirstDb) からいくつかのテーブルを保持し、それらを新しいデータベース (mySecondDb) に取り込みたいと考えています。phpMyAdmin を介してこれを実行できることはわかっていますが、一度に 1 つのテーブルしかコピーできません。

MY QUESTION: データベース 1 からデータベース 2 に移動するテーブルを定義できる mySQL の SQL クエリの種類は何ですか。(構造やデータの保持など)

だからここに私がこれまで持っているものがあります。

まず、mySql - SQL クエリでループを作成することは可能ですか? もしそうなら...

誰かが mySQL で配列を作成するための適切な構文を手伝ってくれませんか?

有効な SQL 構文で配列を作成するにはどうすればよいですか?

// ここでテーブル名の配列を定義します。<--これをどのように形成するのですか?

SET @table_name_array = ('tableFive', 'tableSeven', 'tableNine', 'tableFifteen', 'tableNineteen', 'tableNth', 'tableMaybeOneMore');

適切なSQL構文でその配列をループするにはどうすればよいですか?

// 各テーブル名でループを開始 <-- これをどのように書くか?

これまでの私のコード

SET @database_name := 'myFirstDb';
SET @second_database_name := 'mySecondDb';

// define array of table names here. <-- how to form this?
SET @table_name_array = ('tableFive', 'tableSeven', 'tableNine', 'tableFifteen', 'tableNineteen', 'tableNth', 'tableMaybeOneMore');

// start loop thru each table name <-- how to write this?

SET @table_name := 'value';
SET @second_db_table_name := @table_name;

CREATE TABLE @second_db_table_name LIKE @table_name
ALTER TABLE @second_db_table_name DISABLE KEYS
INSERT INTO @second_db_table_name SELECT * FROM @table_name
ALTER TABLE @table_name ENABLE KEYS

//end loop here
4

0 に答える 0