0

phpMyAdmin 3.5.3 の SQL スクリプトを使用して、データベース「SourceDB」のテーブル「SourceTable」からデータベース「DestinationDB」のテーブル「DestinationTable」にいくつかの列をコピーしたいと思います。私のSQLスクリプトは次のとおりです。

INSERT INTO `DestinationDB..DestinationTable` (
    `ID`, 
    `Name`
    )
SELECT 
    `id`, 
    `name`
FROM `SourceTable..SourceTable`
  • localhost (データベースが選択されていない) で実行すると、
    「#1046 - データベースが選択されていません」というエラーが表示されます。

  • localhost >> DestinationDB で実行すると、
    「#1146 - テーブル 'DestinationDB.DestinationDB..DestinationTable' が存在しません」というメッセージが
    表示されるか、SQL スクリプトで「DestinationDB ..」を削除すると、
    「#1146 - テーブル 'DestinationDB.SourceTable..SourceTable' が存在しません"

そのため、.. の前の部分はデータベースの名前として認識されません。エラーはどこにありますか、またはデータ転送を達成するための別の方法はありますか?

よろしくお願いします。
ターリー語

4

2 に答える 2

0

これも試すことができます

SourceDB.SourceTable から DestinationDB.DestinationTable(ID,Name) に Select(id,name)

于 2013-09-03T10:02:43.743 に答える
0

これを試して

INSERT INTO DestinationDB.DestinationTable ( ID, Name)
(SELECT id, name FROM SourceTable.SourceTable)

ノート:

  1. ここでは 2 つのドット (..) は使用できません。Map the Database には 1 つのドットで十分です。を使用しDestinationDBます。DestinationTable
于 2013-09-03T09:53:31.153 に答える