Oracle Posodobi več stolpcev

Oracle Posodobi Vec Stolpcev



Ta vadnica vas bo naučila, kako posodobiti več stolpcev v tabeli zbirke podatkov z ukazom UPDATE.

Posodabljanje več stolpcev v tabeli baze podatkov je pogost pojav za skrbnike baz podatkov. Na primer, morda boste morali nastaviti novo vrednost za stolpec na podlagi vrednosti drugega stolpca. Na primer, lahko posodobite vrednost plače glede na raven spretnosti. Ker se lahko raven spretnosti sčasoma večkrat spremeni, se lahko znajdete pri posodabljanju takšnega stolpca.

Naučimo se, kako lahko uporabimo klavzulo UPDATE v Oraclu za nastavitev novih vrednosti za dane stolpce tabele.







Izjava Oracle UPDATE

Za posodobitev vrednosti v obstoječi tabeli uporabimo stavek UPDATE, kot je prikazano v naslednji sintaksi:



POSODOBITE ime_tabele
SET stolpec1 = nova_vrednost1,
stolpec2 = nova_vrednost2,
...
stolpecN = nova_vrednostN
KJE stanje;

Kje:



  1. Table_name predstavlja ime tabele, ki jo želite posodobiti.
  2. Column_1, column_2,…,columnN določite imena stolpcev, ki jih želite posodobiti.
  3. New_value1, new_value2,…new_valueN vam omogočajo, da nastavite novo vrednost za vsak stolpec.
  4. Pogoj je neobvezna klavzula, ki vam omogoča, da omejite posodobljene vrstice. Če preskočite pogojni stavek, stavek posodobi vse vrstice v tabeli.

Primer posodobitve Oracle

Oglejmo si primer iz resničnega sveta, kako lahko uporabimo stavek UPDATE v Oraclu:





CREATE TABLE baze podatkov (
ime VARCHAR2 ( petdeset ) NI NULL,
privzeta_vrata NUMBER,
najnovejša_različica VARCHAR2 ( dvajset ) NI NULL,
vrsto VARCHAR2 ( dvajset ) NI NULL,
jezik VARCHAR2 ( dvajset ) NI NULL
) ;

Podani stavek ustvari tabelo za shranjevanje najnovejših baz podatkov, privzetih vrat, najnovejše različice baze podatkov, vrste baze podatkov in programskega jezika, ki se uporablja za izdelavo baze podatkov.

Vstavimo lahko nekaj vzorčnih zapisov, kot je prikazano spodaj:



INSERT INTO baze podatkov ( ime, privzeta_vrata, najnovejša_različica, vrsto , jezik )
VREDNOTE ( 'Oracle' , 1521 , '19c' , 'relacijski' , 'SQL' ) ;
INSERT INTO baze podatkov ( ime, privzeta_vrata, najnovejša_različica, vrsto , jezik )
VREDNOTE ( 'MySQL' , 3306 , '8,0' , 'relacijski' , 'SQL' ) ;
INSERT INTO baze podatkov ( ime, privzeta_vrata, najnovejša_različica, vrsta , jezik )
VREDNOTE ( 'PostgreSQL' , 5432 , '13' , 'relacijski' , 'SQL' ) ;
INSERT INTO baze podatkov ( ime, privzeta_vrata, najnovejša_različica, vrsta , jezik )
VREDNOTE ( 'MongoDB' , 27017 , '4.4' , 'nerelacijski' , 'JavaScript' ) ;
INSERT INTO baze podatkov ( ime, privzeta_vrata, najnovejša_različica, vrsta , jezik )
VREDNOTE ( 'Microsoft SQL Server' , 1433 , '2017' , 'relacijski' , 'T-SQL' ) ;
INSERT INTO baze podatkov ( ime, privzeta_vrata, najnovejša_različica, vrsta , jezik )
VREDNOTE ( 'Apache Cassandra' , 9042 , '4.0' , 'nerelacijski' , 'Java' ) ;
INSERT INTO baze podatkov ( ime, privzeta_vrata, najnovejša_različica, vrsto , jezik )
VREDNOTE ( 'Redis' , 6379 , '6,0' , 'nerelacijski' , 'C++' ) ;
INSERT INTO baze podatkov ( ime, privzeta_vrata, najnovejša_različica, vrsta , jezik )
VAUES ( 'MariaDB' , 3306 , '10,5' , 'relacijski' , 'SQL' ) ;
INSERT INTO baze podatkov ( ime, privzeta_vrata, najnovejša_različica, vrsta , jezik )
VREDNOTE ( 'SQLite' , nič, '3,34' , 'relacijski' , 'C' ) ;
INSERT INTO baze podatkov ( ime, privzeta_vrata, najnovejša_različica, vrsto , jezik )
VREDNOTE ( 'neo4j' , 7474 , '4.1' , 'nerelacijski' , 'Java' ) ;

OPOMBA: default_port za bazo podatkov SQLite je nastavljena na NULL, ker SQLite nima privzete številke vrat.

Končna tabela:

Oracle Update Table

Recimo, da želimo posodobiti najnovejšo različico, ime in privzeta vrata za Microsoft SQL Server. Izvedemo lahko poizvedbo za posodobitev, kot je prikazano v naslednjem:

posodobitev baz podatkov
set ime = 'MS SQL Server' ,
privzeta_vrata = 1400 ,
najnovejša_različica = '2022'
kjer ime kot 'Microsoft SQL Server' ;

Poizvedba mora poiskati vrstico, kjer je ime KOT »Microsoft SQL Server«, in spremeniti ime, default_port in latest_version na nove vrednosti.

OPOMBA: prejšnji podatki so za namene predstavitve. Morda ne odraža natančno posodobljenih informacij o zbirkah podatkov.

Ko je posodobljena, si lahko ogledamo novo tabelo za spremembe podatkov, kot sledi:

Kot lahko vidimo, tabela odraža posodobljene spremembe.

Zaključek

V tej vadnici ste naleteli na stavek UPDATE, ki vam omogoča posodobitev enega ali več stolpcev v tabeli zbirke podatkov.

Vendar ima, tako kot večina praks zbirk podatkov, možne pomanjkljivosti. Na primer:

  1. Zmogljivost – Izvajanje posodobitve več stolpcev je zamudnejše in zahteva več virov kot posodabljanje enega samega stolpca. To postane bolj pomembno, zlasti pri množenju velikega števila vrstic s kompleksnimi podatki.
  2. Celovitost podatkov – Druga skrb pri posodabljanju več stolpcev je celovitost podatkov. Če se ne uporablja pravilno, lahko posodabljanje več stolpcev povzroči poškodbo ali izgubo podatkov. Lahko se poglobite v različne tehnike normalizacije podatkov, da to ublažite, vendar je vedno dobro biti pozoren. Prav tako lahko preizkusite svoje poizvedbe za posodobitev v razvoju, preden jih prenesete v proizvodnjo.
  3. Kompleksnost poizvedbe – Podobno lahko izvajanje izjav o posodobitvi poveča kompleksnost vaših poizvedb, zaradi česar jih je težje brati, vzdrževati ali odpravljati napake.

Na koncu je v nekaterih situacijah lahko uporabno posodabljanje več stolpcev v zbirki podatkov Oracle. Kljub temu je nujno razmisliti o uporabi najboljših praks za zmanjšanje tveganj.