2010-04-22 20 views
14

Sto cercando di inserire dati da una delle mie tabelle esistenti in un'altra tabella esistente."seleziona * nella tabella" Funzionerà per l'inserimento di dati nella tabella esistente

E 'possibile inserire dati in qualsiasi tabella esistente utilizzando la query select * into. Penso che si possa fare usando union ma in quel caso ho bisogno di registrare tutti i dati del mio tavolo esistente nella tabella temporanea, quindi rilasciare quella tabella e infine applicare union per inserire tutti i record nella stessa tabella

es.

select * into #tblExisting from tblExisting 
drop table tblExisting 
select * into tblExisting from #tblExisting union tblActualData 

Qui tblExisting è il tavolo dove ho effettivamente desidera memorizzare tutti i dati tblActualData è il tavolo da cui i dati devono essere aggiunto al tblExisting.

È giusto metodo. Abbiamo qualche altra alternativa?

+0

correlati: http://stackoverflow.com/questions/4101739 –

risposta

4

No, non è possibile utilizzare SELECT INTO per inserire dati in una tabella esistente.

Il documentation rende questo molto chiaro:

SELECT ... INTO crea una nuova tabellanel filegroup predefinito e inserisce le righe risultanti dalla query in esso.

È generalmente vuole evitare di utilizzare SELECT INTO nella produzione, perché ti dà molto poco controllo su come viene creata la tabella, e può portare a ogni sorta di altri problemi di prestazioni di bloccaggio brutto e. Dovresti creare schemi esplicitamente e usare INSERT - anche per tabelle temporanee.

0

@Ryan Chase Puoi farlo selezionando tutte le colonne usando *? Sì!

INSERT INTO yourtable2 SELECT * FROM yourtable1

+0

Questo non fornisce una risposta alla domanda. Puoi [cercare domande simili] (// stackoverflow.com/search), o fare riferimento alle domande correlate e collegate sul lato destro della pagina per trovare una risposta. Se hai una domanda correlata ma diversa, [fai una nuova domanda] (// stackoverflow.com/questions/ask) e includi un collegamento a questo per aiutare a fornire il contesto. Vedi: [Fai domande, ottieni risposte, senza distrazioni] (// stackoverflow.com/tour) – Bugs

Problemi correlati