2012-03-26 12 views
2

データを混乱させました。私は元のものが何であったかを覚えていないポイントまで、褒められたIDと値を得ています。 (いくつかのことをテストする)。1つのデータベーステーブルから別のデータベーステーブルにデータをコピーするためのSQLコード

私はテーブルがquery_string_interpretation呼ばれているとDBのその部分は私が呼ば復元したバックアップデータベースを持って、test1_db

と呼ばれ、test2_db

がどのように私は1つのデータベーステーブルからその内容を復元することができます別の?

+0

何行目について話していますか?また、どのバージョンのSQL 2008?または2005年? –

+0

MSSQL 2008,786 rows –

答えて

1

まず、すべてのデータがソース表にあること、またはデータが両方の表に配置されていることを確認する必要があります先。最初のケースでは、送信先テーブルを切り捨てる必要があります。

TRUNCATE TABLE test1_db..query_string_interpretation 

第二には、あなたがこれらのフィールドが存在する場合は、IDENTITYフィールドに正しい値を挿入することを確認する必要があります。 SET INDENITY_INSERT ONステートメントを使用してください。もしあなたは第二のステップでONにそれを切り替え、

insert into test1_db..query_string_interpretation 
select * from test2_db..query_string_interpretation 

をOffにINDENITY_INSERTを切り替えることを忘れないでください: 第三に、あなたは値を挿入する必要があります。

+1

あなたには最高の答えがあり、あなたは丁寧です。ありがとうございました! :) –

+0

@ sp-1986、「あなたは丁寧です」とSQLとは何が関係していますか? –

+0

新鮮なメンバーの方々には歓迎されていません。あなたの質問に答えて、何も - 私は友好的だった。 –

2

通常、あなたはINSERT INTO/SELECT FROMを使用してテーブル間でデータを移動できます。

構文はおおよそ次のとおりです。

INSERT INTO 
test1_db..query_string_interpretation (<your columns here>) 
select <your columns here> 
FROM test2_db..query_string_interpretation 
+0

最初のテーブルを切り捨てる必要はありませんか? –

+0

最初のテーブルの内容を削除してから* –

+1

を実行しました。あなたの質問は非常に曖昧で、正確に何が必要なのかを知るのは難しいです。切り捨てる?多分;おそらく削除してください。私はreccomendation b/cをすることはできません削除することができない外部キーがあるかどうか、test2がtest1のデータの正確なコピーを含んでいる場合、それらが同じサーバーである場合、テーブル構造の外観何でもあなたは単にtest2からtest1にデータを書き込む方法を尋ねるだけです。あなたのテーブルをどうやって消し去るかを理解していると思っていたあなたの質問を書くのにもっと時間を費やすと、より正確な答えが得られます。 – EBarr

1

あなたはあなたのためにこれを行うには、SQLウィザードを使用することができます。 Management Studioで、右、いずれかのデータベースをクリックして選択しTasksその後、Import Data...またはExport Data...

0

これを試してください:あなたはアイデンティティフィールドを持っている場合

delete from test1_db..query_string_interpretation 

insert into test1_db..query_string_interpretation 
select * from test2_db..query_string_interpretation 

はあなたがを除いて(列の名前を記述する必要があり同一性1)。 IDを保持する必要がある場合は、SET IDENTITY_INSERT ON文を参照してください。here

+0

SET INDENTITY INSERT ON、多分? –

関連する問題