CREATE TABLE in uno schema Postgres

Create Table In Uno Schema Postgres



PostgreSQL è uno dei più popolari sistemi di database relazionali a oggetti. È un software gratuito e open source che estende il linguaggio SQL con funzionalità aggiuntive per gestire i complessi carichi di lavoro dei dati. Può funzionare con vari tipi di dati, affidabile e sicuro. Ulteriori informazioni sulle funzionalità di PostgreSQL.

In questa guida, impareremo di più sulla creazione di tabelle in uno schema in PostgreSQL.







Schemi in PostgreSQL

Un database PostgreSQL può contenere uno o più schemi denominati, ciascuno schema contenente tabelle.



Lo stesso nome oggetto può essere assegnato a più schemi senza conflitti. Ad esempio, è valido il seguente schema/albero della tabella:



  • schema_a
    • Tabella 1
    • Tavolo 2
  • schema_b
    • Tabella 1
    • Tavolo 2

Puoi pensare a schemi come directory a livello di sistema operativo. La differenza è che non possono esserci schemi nidificati. Scopri di più sullo schema su Documentazione PostgreSQL .





Ci possono essere diversi motivi per implementare gli schemi:

  • Più utenti utilizzano lo stesso database senza entrare in conflitto tra loro.
  • Migliore organizzazione e gestione dei database in gruppi logici.
  • Le app di terze parti possono creare il proprio schema univoco senza entrare in collisione con gli schemi esistenti o altri oggetti.

Tabelle in PostgreSQL

Qualsiasi database relazionale è costituito da più tabelle correlate, ciascuna costituita da righe e colonne. PostgreSQL viene fornito con diverse tabelle integrate che contengono varie informazioni di sistema. Tuttavia, possiamo anche creare nuove tabelle in database e schemi definiti dall'utente.



Prerequisiti:

Per eseguire i passaggi illustrati in questa guida, avrai bisogno dei seguenti componenti:

  • Un sistema Linux correttamente configurato. Impara di più riguardo installazione di Ubuntu in VirtualBox .
  • Una corretta installazione di PostgreSQL. Guardare installare PostgreSQL su Ubuntu .
  • Accesso ad un Utente PostgreSQL insieme a Autorizzazione UTILIZZO ad una banca dati.

Ai fini di questa guida, useremo postgres per eseguire tutte le azioni in PostgreSQL.

Creazione di tabelle in uno schema

Creazione di un database dimostrativo

Come accennato in precedenza, gli schemi esistono in un database. A scopo dimostrativo, creiamo un database fittizio, evitando l'interruzione di qualsiasi database esistente.

Accedi alla shell PostgreSQL come postgres :

$ sudo -i -u postgres psql

Crea un nuovo database demo_db:

$ CREA DATABASE demo_db;

Verifica se il database è stato creato correttamente:

$ \l

Infine, connettiti al database appena creato:

$ \connect demo_db;

Lo schema pubblico

Qualsiasi nuovo database in PostgreSQL viene fornito con uno schema predefinito: pubblico . Se si tenta di creare un oggetto senza specificare il nome dello schema, lo schema pubblico viene selezionato per impostazione predefinita.

Il seguente comando stampa tutti gli schemi disponibili nel database PostgreSQL:

$ \dn

In alternativa, possiamo anche utilizzare la seguente query SQL:

$ SELEZIONA * DA pg_catalog.pg_namespace;

Creazione di un nuovo schema

Per creare un nuovo schema in un database specifico, la struttura del comando è la seguente:

$ CREATE SCHEMA ;

Seguendo la regola, creiamo un nuovo schema demo_schema:

$ CREA SCHEMA demo_schema;

Controlla l'elenco degli schemi per la verifica:

$ \dn

Creazione di una tabella in uno schema

Ora che abbiamo creato lo schema di destinazione, possiamo popolarlo con le tabelle.

La sintassi per la creazione di una tabella è la seguente:

CREATE TABLE . (

...
)

Qui:

  • schema : Questo campo specifica il nome dello schema in cui viene creata la tabella. Se non viene fornito alcun valore, la tabella viene creata sotto il file pubblico schema.

Per dimostrazione, creiamo una semplice tabella:

CREATE TABLE demo_schema.demo_table (

CARATTERE NOME(64),

ID INT NON NULL

);

Qui:

  • Il campo NOME è specificato per memorizzare una stringa di 64 caratteri.
  • Il campo ID contiene i valori interi. Il termine ' NON NULLO ' indica che ID non può essere vuoto o nullo.

Possiamo verificare l'esistenza della tabella utilizzando la seguente query:

$ SELEZIONA * DA demo_schema.demo_table;

Inserimento di dati nella tabella

Con la tabella in atto, possiamo ora inserire alcuni valori:

INSERIRE IN demo_schema.demo_table (NOME, ID)

I VALORI

('PQR', 45),

('IJK', 99)

;

Controlla il contenuto della tabella:

$ SELEZIONA * DA demo_schema.demo_table;

Gestione dello schema

Autorizzazioni dello schema

Con l'aiuto dell'autorizzazione dello schema, possiamo gestire quale ruolo può eseguire quale azione su uno schema specifico. Di tutti i possibili privilegi, solo gli schemi supportano CREARE e UTILIZZARE.

Per aggiornare l'autorizzazione dello schema per un particolare ruolo, la struttura del comando è la seguente:

$ GRANT ON SCHEMA TO ;

Per revocare l'autorizzazione dello schema per un particolare ruolo, la struttura del comando è la seguente:

$ REVOKE ON SCHEMA TO ;

Verificare la modifica utilizzando il seguente comando:

$ \dn+

Modificare le proprietà dello schema

Con l'aiuto del ALTRO SCHEMA istruzione, possiamo modificare le varie proprietà di uno schema. Ad esempio: proprietà, nome dello schema, ecc.

Per modificare il nome dello schema, utilizzare la seguente query:

$ ALTER SCHEMA RENAME TO ;

Per modificare la proprietà di uno schema, utilizza la seguente query:

$ ALTER SCHEMA OWNER TO ;

Si noti che per modificare la proprietà, l'utente corrente deve disporre del file CREARE autorizzazione allo schema.

Eliminazione di uno schema

Se uno schema non è più necessario, possiamo eliminarlo utilizzando il file FAR CADERE domanda:

$ DROP SCHEMA

Se lo schema contiene qualsiasi oggetto, abbiamo bisogno del file CASCATA modificatore:

$ DROP SCHEMA CASCADE;

Gestione della tabella

Autorizzazioni tabella

Come lo schema, ogni tabella include anche la gestione delle autorizzazioni, che definisce quale azione può eseguire un ruolo sulla tabella.

Per verificare le autorizzazioni di una tabella, utilizzare il seguente comando in psql:

$ \dp

Modificare le proprietà della tabella

Con l'aiuto del ALTERARE TABELLA istruzione, possiamo modificare i numerosi aspetti di una tabella già esistente.

Ad esempio, per eliminare una colonna, la query ha il seguente aspetto:

$ ALTER TABLE DROP COLUMN ;

Per aggiungere una nuova colonna, possiamo utilizzare la seguente query:

$ ALTER TABLE ADD COLUMN ;

Possiamo anche impostare la compressione per una colonna specifica:

$ ALTER COLUMN SET COMPRESSION ;

Eliminazione di una tabella

Per eliminare una tabella da uno schema, possiamo utilizzare il file TABELLA GOCCIA domanda:

$ DROP TABLE ;

Si noti che a differenza degli schemi, il TABELLA GOCCIA query non produrrà un errore se la tabella è vuota o meno.

Conclusione

In questa guida, abbiamo dimostrato come creare le tabelle in uno schema in PostgreSQL. Abbiamo creato uno schema fittizio all'interno di un database fittizio e creato una tabella all'interno dello schema. Questa guida mostra anche come gestire le varie proprietà di schemi e tabelle.

Per una migliore integrità dei dati, è possibile configurare a replica logica di PostgreSQL . Per mantenere integro il database PostgreSQL, puoi configurare il file autovuoto per pulire le tuple morte lasciate dai record cancellati.

Per ulteriori guide su PostgreSQL, consulta il Sottocategoria PostgreSQL .