Oracle aggiorna più colonne

Oracle Aggiorna Piu Colonne



Questo tutorial ti insegnerà come aggiornare più colonne in una tabella di database usando il comando UPDATE.

L'aggiornamento di più colonne in una tabella di database è un fenomeno comune per gli amministratori di database. Ad esempio, potrebbe essere necessario impostare un nuovo valore per una colonna in base al valore di un'altra colonna. Ad esempio, puoi aggiornare il valore dello stipendio in base al livello di abilità. Poiché il livello di abilità può cambiare più volte nel tempo, potresti trovarti ad aggiornare tale colonna.

Impariamo come possiamo utilizzare la clausola UPDATE in Oracle per impostare i nuovi valori per le colonne della tabella specificate.







Istruzione Oracle UPDATE

Per aggiornare il valore in una tabella esistente, utilizziamo l'istruzione UPDATE come mostrato nella seguente sintassi:



UPDATE nome_tabella
SET colonna1 = nuovo_valore1,
colonna2 = nuovo_valore2,
...
colonnaN = nuovo_valoreN
Condizione DOVE;

Dove:



  1. Table_name rappresenta il nome della tabella che si desidera aggiornare.
  2. Column_1, column_2,…,columnN definiscono i nomi delle colonne che si desidera aggiornare.
  3. Nuovo_valore1, nuovo_valore2,…nuovo_valoreN consentono di impostare il nuovo valore per ogni colonna.
  4. La condizione è una clausola facoltativa che consente di limitare le righe aggiornate. Se salti la clausola condizionale, l'istruzione aggiorna tutte le righe della tabella.

Esempio di aggiornamento Oracle

Diamo un'occhiata a un esempio del mondo reale su come possiamo utilizzare l'istruzione UPDATE in Oracle:





CREATE TABLE database (
nome VARCHAR2 ( cinquanta ) NON NULLO,
default_porta NUMERO,
ultima_versione VARCHAR2 ( venti ) NON NULLO,
genere VARCHAR2 ( venti ) NON NULLO,
lingua VARCHAR2 ( venti ) NON NULLO
) ;

L'istruzione fornita crea una tabella per archiviare i database più recenti, la porta predefinita, l'ultima versione del database, il tipo di database e il linguaggio di programmazione utilizzati per creare il database.

Possiamo inserire alcuni record di esempio come mostrato di seguito:



INSERIRE IN database ( nome, default_port, latest_version, genere , linguaggio )
I VALORI ( 'Oracolo' , 1521 , '19c' , 'relazionale' , 'SQL' ) ;
INSERIRE IN database ( nome, default_port, latest_version, genere , linguaggio )
I VALORI ( 'MySQL' , 3306 , '8.0' , 'relazionale' , 'SQL' ) ;
INSERIRE IN database ( nome, default_port, latest_version, genere , linguaggio )
I VALORI ( 'PostgreSQL' , 5432 , '13' , 'relazionale' , 'SQL' ) ;
INSERIRE IN database ( nome, default_port, latest_version, genere , linguaggio )
I VALORI ( 'MongoDB' , 27017 , '4.4' , 'non relazionale' , 'Javascript' ) ;
INSERIRE IN database ( nome, default_port, latest_version, genere , linguaggio )
I VALORI ( 'Microsoft SQLServer' , 1433 , '2017' , 'relazionale' , 'T-SQL' ) ;
INSERIRE IN database ( nome, default_port, latest_version, genere , linguaggio )
I VALORI ( 'Apache Cassandra' , 9042 , '4.0' , 'non relazionale' , 'Giava' ) ;
INSERIRE IN database ( nome, default_port, latest_version, genere , linguaggio )
I VALORI ( 'Redis' , 6379 , '6.0' , 'non relazionale' , 'C++' ) ;
INSERIRE IN database ( nome, default_port, latest_version, genere , linguaggio )
VALORI ( 'Maria DB' , 3306 , '10.5' , 'relazionale' , 'SQL' ) ;
INSERIRE IN database ( nome, default_port, latest_version, genere , linguaggio )
I VALORI ( 'SQLite' , nullo, '3.34' , 'relazionale' , 'C' ) ;
INSERIRE IN database ( nome, default_port, latest_version, genere , linguaggio )
I VALORI ( 'neo4j' , 7474 , '4.1' , 'non relazionale' , 'Giava' ) ;

NOTA: default_port per il database SQLite è impostato su NULL poiché SQLite non ha un numero di porta predefinito.

Tabella risultante:

Tabella di aggiornamento Oracle

Supponiamo di voler aggiornare la versione più recente, il nome e la porta predefinita per Microsoft SQL Server. Possiamo eseguire una query di aggiornamento come mostrato di seguito:

aggiornare i database
impostare nome = 'Server MS SQL' ,
default_port = 1400 ,
ultima_versione = '2022'
dove il nome piace 'Microsoft SQLServer' ;

La query dovrebbe individuare la riga in cui il nome è LIKE 'Microsoft SQL Server' e modificare il nome, default_port e latest_version con i nuovi valori.

NOTA: I dati precedenti sono a scopo dimostrativo. Potrebbe non riflettere accuratamente informazioni aggiornate sui database.

Una volta aggiornato, possiamo visualizzare la nuova tabella per le modifiche ai dati come segue:

Come possiamo vedere, la tabella riflette le modifiche aggiornate.

Conclusione

In questo tutorial, ti sei imbattuto nell'istruzione UPDATE che ti consente di aggiornare una o più colonne in una tabella di database.

Tuttavia, come la maggior parte delle pratiche di database, presenta potenziali svantaggi. Per esempio:

  1. Prestazioni: l'esecuzione di un aggiornamento su più colonne richiede più tempo e risorse rispetto all'aggiornamento di una singola colonna. Ciò diventa più significativo, soprattutto quando si moltiplica un numero elevato di righe con dati complessi.
  2. Integrità dei dati: un'altra preoccupazione durante l'aggiornamento di più colonne è l'integrità dei dati. Se utilizzato in modo errato, l'aggiornamento di più colonne può causare il danneggiamento o la perdita di dati. Puoi immergerti in varie tecniche di normalizzazione dei dati per mitigare questo problema, ma è sempre bene essere consapevoli. Puoi anche testare le tue query di aggiornamento in fase di sviluppo prima di portarle in produzione.
  3. Complessità delle query: allo stesso modo, l'esecuzione delle istruzioni di aggiornamento può aumentare la complessità delle query, rendendole più difficili da leggere, mantenere o eseguire il debug.

Alla fine, l'aggiornamento di più colonne in un database Oracle può essere utile in alcune situazioni. Tuttavia, è essenziale considerare l'utilizzo delle migliori pratiche per ridurre al minimo i rischi.