2013-12-12 11 views
109

Ho una tabella (chiamiamola A_table) in un database (chiamiamola A_db) in Microsoft SQL Server Management Studio e ci sono 10 righe.Come esportare tutti i dati dalla tabella in un formato sql inseribile?

Ho un altro database (chiamarlo B_db) e ha una tabella (chiamatelo B_table), che ha le stesse impostazioni di colonna di A_table. Ma lo B_table è vuoto.

quello che voglio:

  • Copia ogni righe da A_table a B_table.

C'è qualche opzione in Microsoft SQL Server Management Studio 2012, per creare un inserto SQL da una tabella? O c'è qualche altra opzione per farlo?

+5

È possibile fare clic destro del database, scegliere Attività, generare script, fare clic su Avanti , scegliere le tabelle, fare clic su Avanti, ora il trucco è fare clic su Avanzate e scorrere fino a tipi di dati per lo script e selezionare solo i dati, quindi modificare lo script creato – Armand

+1

commento aggiunto come risposta per i futuri visitatori – Armand

+0

Possibile duplicato di [Esportazione di dati in SQL Server come INSERT INTO] (http://stackoverflow.com/questions/1515969/exporting-data-in- sql-server-as-insert-into) –

risposta

282

rapida e facile:

  1. banca dati Fare clic destro
  2. Point to tasks
  3. Selezionare generate scripts
  4. Fare clic su accanto
  5. scegliere tavoli
  6. Fare clic su accanto
  7. fare clic su Avanzate
  8. Scorrere fino a data to script - Chiamato types of data to script in SMSS 2014 Grazie a Ellesedil per il commento
  9. Selezionare data only
  10. cliccare su 'OK' per chiudere la avanzata finestra delle opzioni di script
  11. Fare clic su accanto e generare lo script

Solitamente in casi come questo si genera una nuova finestra dell'editor di query e quindi si eseguono le eventuali modifiche laddove necessario.

+2

Ho cercato così tanto tempo per questo. Stavo letteralmente per impazzire. Grazie mille. – Paramone

+5

C'è un modo per fare ciò e generare istruzioni 'UPDATE' invece di inserire? –

+0

Avviso: questo strumento consente di esportare valori datetime in formato specifico della cultura. Potrebbe non essere importabile su altri server – Alexus1024

-3

Non ho visto nessuna opzione in Microsoft SQL Server Management Studio 2012 per farlo.

Sono sicuro che è possibile scrivere qualcosa in T-SQL data l'ora.

Check out TOAD from QUEST - ora di proprietà DELL.

http://www.toadworld.com/products/toad-for-oracle/f/10/t/9778.aspx

Select your rows. 
Rt -click -> Export Dataset. 
Choose Insert Statement format 
Be sure to check “selected rows only” 

cosa bella di rospo, funziona sia con SQL Server e Oracle. Se devi lavorare con entrambi, è un buon investimento.

-3

Prova www.sqlscripter.com.

Per quanto ne so, è l'unico strumento che non crea solo script INSERT una volta, ma è anche possibile generare INSERT e UPDATE e gli script combinati insieme per aggiornamenti frequenti. Lo stiamo usando da un paio di anni e funziona perfettamente per noi.

5

So che questa è una vecchia domanda, ma victorio ha anche chiesto se ci sono altre opzioni per copiare i dati da una tabella a un'altra. C'è un modo molto breve e veloce per inserire tutti i record da una tabella a un'altra (che potrebbe o potrebbe non avere un design simile).

Se non avete la colonna di tabella B_table:

INSERT INTO A_db.dbo.A_table 
SELECT * FROM B_db.dbo.B_table 

Se hai la colonna di tabella B_table, è necessario specificare le colonne da inserire. Fondamentalmente si seleziona tutto tranne la colonna Identity, che verrà incrementata automaticamente per impostazione predefinita.

Nel caso in cui se non avete B_table esistente nella B_db

SELECT * 
INTO B_db.dbo.B_table 
FROM A_db.dbo.A_table 

creerà tavolo B_table nel database B_db con tutti i valori esistenti