Come duplicare una tabella in postgresql?

Come duplicare una tabella in postgresql?
Molti utenti chiedono la duplicazione di una tabella senza crearla di nuovo e aggiungere dati all'interno di PostgreSQL. I comandi di duplicazione possono essere usati qui. Vediamolo aprendo la GUI PGADMIN dal menu Start del desktop di Windows 10. Aggiungi due volte la password del server dopo. Successivamente, otterrai un'interfaccia di applicazione utente grafica PGADmin di PostgreSQL. All'interno dei database, puoi esplorare molte cose. Troverai un database Postgres che è già stato definito e creato da PostgreSQL all'interno del processo di installazione e configurazione. Quindi, non devi creare un nuovo database.

Esempio 01:

Facciamo il nostro primo esempio per duplicare una tabella già definita in Postgres. Dopo aver esplorato il database Postgres troverai l'opzione delle tabelle. Crea una nuova tabella "test" con alcune colonne record. Puoi trovare questa tabella sotto le opzioni di una tabella all'esplorazione, come mostrato nell'immagine seguente.

Si prega di toccare l'icona di Strumento di query per aprirlo. Quando si aprirà, scrivi la query Seleziona in esso per recuperare i record di "test" della tabella appena creati secondo il comando seguente. Tocca l'icona di "Esegui" per eseguire questo comando. L'output mostra tre diverse tabelle "Test" colonne con i loro record, E.G. Id, fname e lname.

# Seleziona * dal test;

Ora, è il momento di creare una tabella duplicata "dup_test" per la tabella "test". Quindi, apri prima la nuova scheda di uno strumento di query e scrivi il comando indicato di seguito. Questa query ha la sua sottoparte per recuperare tutti i record della tabella "test" utilizzando l'istruzione Select. Il comando Crea Table è stato utilizzato per creare una nuova tabella "dup_test" come la tabella "test". L'istruzione Select ha recuperato tutti i dati e copiandoli nella tabella "dup_test". Eseguire la query utilizzando l'icona "Esegui" dalla barra delle applicazioni superiore. Al momento dell'esecuzione di questa query, PostgreSQL mostra il messaggio di successo all'interno dell'area di output nella sezione Messaggi.

# Crea table duplicate_table_name as (select * from table_name);

Quando esplori l'elenco delle tabelle, ti mostra le due tabelle, E.G. dup_test e test.

Quando controlliamo la tabella appena creata "dup_test" utilizzando la query seleziona nell'area dello strumento di query, abbiamo scoperto che contiene gli stessi dati e struttura della tabella "test". Quindi, il record e la struttura della tabella "test" sono stati completamente duplicati nella tabella "dup_test".

# Seleziona * da table_name;

Esempio 02:

Un utente può anche creare una tabella duplicata in PostgreSQL utilizzando un altro comando. Questa duplicazione verrà eseguita senza la duplicazione dei dati della tabella. Quindi, utilizzeremo la parola chiave "No Data" dopo l'istruzione SELECT secondo la query di seguito. La query ha creato una nuova tabella denominata "duplicato" con istruzione Crea tabella e copia la struttura di una tabella "Test" tramite l'istruzione Select. L'istruzione "senza dati" verrà utilizzata per impedire a questa query di copiare i dati da una tabella "Test" a una tabella "duplicata". All'esecuzione, la query ha avuto successo secondo l'output seguente e la tabella è stata duplicata con successo.

# Crea table Table_name AS (Seleziona * da table_name) senza dati;

È possibile trovare questa tabella nella sezione "Tabelle" di PostgreSQL come di seguito.

Dopo aver verificato i record di una tabella appena duplicata denominata "duplicata" con la query selezionata come di seguito, abbiamo scoperto che la struttura di una tabella è la stessa della tabella "test". Non ci sono record in questa tabella a causa dell'utilizzo dell'istruzione "senza dati" all'interno della query. Quindi, la domanda ha avuto successo.

# Seleziona * da table_name;

Esempio 03:

Un altro modo più rapido e semplice per duplicare una tabella è l'utilizzo dell'istruzione "As Tabella" all'interno del comando Crea Tabella di PostgreSQL. In questo caso, vedremo come funziona magicamente questa query. Quindi, abbiamo aperto lo strumento di query dalla sua icona. Quindi dobbiamo scrivere la query qui sotto. Abbiamo creato una tabella denominata "nuovo" come copia di una tabella "test" da una clausola "come tabella" all'interno della nostra query. Prova il comando nell'area di query della shell della riga di comando di Postgresql per vedere i risultati. Fare clic sull'icona Esegui dalla barra delle applicazioni dell'interfaccia utente grafica PGadmin o premere il tasto "Invio" dalla tastiera se si lavora all'interno della shell di comando di SQL per eseguire questa query. Vedrai che la query funziona correttamente secondo l'uscita mostrata nell'area di uscita dell'istantanea, E.G. Messaggi. Ciò significa che una tabella "test" è stata duplicata correttamente e una nuova tabella "Nuovo" è stata creata nel database Postgres.

# Crea table table_to_be_duplicated come tabella table_to_be_copied_from;

Puoi vedere la tabella appena creata "Nuovo" all'interno dell'elenco delle tabelle sotto il database Postgres.

Dopo aver recuperato il contenuto di una tabella "Nuovo" dallo strumento di query utilizzando un comando Select, mostra gli stessi dati della tabella "Test" insieme alla struttura, E.G. Nomi di colonne.

Esempio 04:

Facciamo un altro semplice esempio per illustrare il concetto di duplicazione. Questa volta, abbiamo creato una tabella "Nuovo" all'interno del database Postgres dell'interfaccia utente grafica PGadmin. Questa tabella ha 10 record all'interno delle sue quattro colonne, E.G. Id, nome, città ed età. Vediamo i record della tabella "nuovi" utilizzando lo strumento di query. Abbiamo provato il comando di seguito all'interno dell'area di query per recuperare la tabella "Nuovo" per ID colonna. L'output per questo comando mostra i 10 record per alcuni utenti.

# Seleziona * da table_name ordine per “column_name” ASC;

Per creare una tabella duplicata, apri una nuova scheda per lo strumento di query. Abbiamo usato il comando seguente per creare una nuova tabella "duplicata" come tabella "nuovo" mostrata sopra. Abbiamo utilizzato la clausola "senza dati" all'interno di questa query per non copiare il contenuto di una tabella. Invece, questa query farà solo una copia di una struttura di un tavolo "nuovo". Quindi dopo aver scritto questa query all'interno dell'area di query, tocca il pulsante di esecuzione mostrato nella barra delle applicazioni di PGADMIN. La query verrà eseguita e il messaggio di successo per la tabella duplicata verrà visualizzato nell'area di output dello strumento di query secondo l'istantanea seguente.

# Crea tabella duplicate_table_name come tabella table_name senza dati;

Dopo duplicato e creato una tabella, vediamo la tabella duplicata appena creata, E.G. "duplicare". Quindi abbiamo recuperato il contenuto di una tabella "duplicata" durante l'utilizzo della query selezionata all'interno dell'area di query ordinata dalla colonna "ID". Abbiamo visto che la struttura "duplicata" della tabella è la stessa della tabella "NUOVA". Questa tabella non ha copiato i record della tabella "Nuovo" come utilizzando la clausola "senza dati".

# Seleziona * da table_name ordine per “id” ASC;

Conclusione:

Abbiamo discusso di diversi comandi postgresql per duplicare una tabella. Abbiamo visto come duplicare una struttura della tabella con e senza i suoi dati. Tutti questi comandi sono ugualmente efficienti da utilizzare sulla shell della riga di comando di PostgreSQL.