Oracle Uppdatera flera kolumner

Oracle Uppdatera Flera Kolumner



Denna handledning kommer att lära dig hur du uppdaterar flera kolumner i en databastabell med kommandot UPDATE.

Att uppdatera flera kolumner i en databastabell är ett vanligt fenomen för databasadministratörer. Till exempel kan du behöva ange ett nytt värde för en kolumn baserat på värdet för en annan kolumn. Du kan till exempel uppdatera lönevärdet baserat på kompetensnivån. Eftersom färdighetsnivån kan ändras flera gånger över tiden, kan du komma på att du gör uppdateringar av en sådan kolumn.

Låt oss lära oss hur vi kan använda UPDATE-satsen i Oracle för att ställa in de nya värdena för de givna tabellkolumnerna.







Oracle UPPDATERING Uttalande

För att uppdatera värdet i en befintlig tabell använder vi UPDATE-satsen som visas i följande syntax:



UPPDATERA tabellnamn
SET kolumn1 = nytt_värde1,
kolumn2 = nytt_värde2,
...
kolumnN = nytt_värdeN
WHERE skick;

Var:



  1. Tabellnamn representerar namnet på tabellen som du vill uppdatera.
  2. Column_1, column_2,...,columnN definierar namnen på de kolumner som du vill uppdatera.
  3. New_value1, new_value2,...new_valueN låter dig ställa in det nya värdet för varje kolumn.
  4. Villkor är en valfri klausul som låter dig begränsa de uppdaterade raderna. Om du hoppar över den villkorliga satsen uppdaterar satsen alla rader i tabellen.

Oracle Update Exempel

Låt oss titta på ett verkligt exempel på hur vi kan använda UPDATE-satsen i Oracle:





SKAPA TABELL-databaser (
namn VARCHAR2 ( femtio ) INTE NULL,
default_port NUMBER,
senaste_version VARCHAR2 ( tjugo ) INTE NULL,
typ VARCHAR2 ( tjugo ) INTE NULL,
språk VARCHAR2 ( tjugo ) INTE NULL
) ;

Den tillhandahållna satsen skapar en tabell för att lagra de senaste databaserna, standardporten, den senaste databasversionen, databastypen och programmeringsspråket som används för att bygga databasen.

Vi kan infoga några exempelposter som visas i följande:



INFOGA I databaser ( namn, standard_port, senaste_version, typ , språk )
VÄRDEN ( 'Orakel' , 1521 , '19c' , 'relationell' , 'SQL' ) ;
INFOGA I databaser ( namn, standard_port, senaste_version, typ , språk )
VÄRDEN ( 'MySQL' , 3306 , '8.0' , 'relationell' , 'SQL' ) ;
INFOGA I databaser ( namn, standard_port, senaste_version, typ , språk )
VÄRDEN ( 'PostgreSQL' , 5432 , '13' , 'relationell' , 'SQL' ) ;
INFOGA I databaser ( namn, standard_port, senaste_version, typ , språk )
VÄRDEN ( 'MongoDB' , 27017 , '4.4' , 'icke-relationell' , 'JavaScript' ) ;
INFOGA I databaser ( namn, standard_port, senaste_version, typ , språk )
VÄRDEN ( 'Microsoft SQL Server' , 1433 , '2017' , 'relationell' , 'T-SQL' ) ;
INFOGA I databaser ( namn, standard_port, senaste_version, typ , språk )
VÄRDEN ( 'Apache Cassandra' , 9042 , '4.0' , 'icke-relationell' , 'Java' ) ;
INFOGA I databaser ( namn, standard_port, senaste_version, typ , språk )
VÄRDEN ( 'Redis' , 6379 , '6.0' , 'icke-relationell' , 'C++' ) ;
INFOGA I databaser ( namn, standard_port, senaste_version, typ , språk )
VAUES ( 'MariaDB' , 3306 , '10,5' , 'relationell' , 'SQL' ) ;
INFOGA I databaser ( namn, standard_port, senaste_version, typ , språk )
VÄRDEN ( 'SQLite' , null, '3.34' , 'relationell' , 'C' ) ;
INFOGA I databaser ( namn, standard_port, senaste_version, typ , språk )
VÄRDEN ( 'neo4j' , 7474 , '4.1' , 'icke-relationell' , 'Java' ) ;

OBS! Standard_port för SQLite-databasen är inställd på NULL eftersom SQLite inte har ett standardportnummer.

Resultattabell:

Oracles uppdateringstabell

Anta att vi vill uppdatera den senaste_versionen, namnet och standardporten för Microsoft SQL Server. Vi kan köra en uppdateringsfråga enligt följande:

uppdatera databaser
uppsättning namn = 'MS SQL Server' ,
default_port = 1400 ,
senaste_version = '2022'
där namn som 'Microsoft SQL Server' ;

Frågan ska hitta raden där namnet är SOM 'Microsoft SQL Server' och ändra namnet, default_port och latest_version till de nya värdena.

OBS: De tidigare uppgifterna är för demonstrationsändamål. Det kanske inte återspeglar aktuell information om databaserna korrekt.

När den har uppdaterats kan vi se den nya tabellen för dataändringar enligt följande:

Som vi kan se återspeglar tabellen de uppdaterade ändringarna.

Slutsats

I den här handledningen stötte du på UPDATE-satsen som låter dig uppdatera en enstaka eller flera kolumner i en databastabell.

Men som de flesta databasmetoder har det potentiella nackdelar. Till exempel:

  1. Prestanda – Att utföra en uppdatering på flera kolumner är mer tidskrävande och resurskrävande än att uppdatera en enda kolumn. Detta blir mer betydelsefullt, särskilt när man multiplicerar ett stort antal rader med komplexa data.
  2. Dataintegritet – Ett annat problem vid uppdatering av flera kolumner är dataintegritet. Om den används felaktigt kan uppdatering av flera kolumner leda till att data skadas eller går förlorade. Du kan dyka in i olika datanormaliseringstekniker för att mildra detta, men det är alltid bra att vara uppmärksam. Du kan också testa dina uppdateringsfrågor under utveckling innan du tar dem till produktion.
  3. Frågekomplexitet – På samma sätt kan att köra uppdateringssatserna öka komplexiteten i dina frågor, vilket gör dem svårare att läsa, underhålla eller felsöka.

I slutändan kan det vara användbart att uppdatera flera kolumner i en Oracle-databas i vissa situationer. Ändå är det viktigt att överväga att använda bästa praxis för att minimera riskerna.