Oracle ažuriranje više stupaca

Oracle Azuriranje Vise Stupaca



Ovaj vodič će vas naučiti kako ažurirati više stupaca u tablici baze podataka pomoću naredbe UPDATE.

Ažuriranje više stupaca u tablici baze podataka uobičajena je pojava za administratore baze podataka. Na primjer, možda ćete morati postaviti novu vrijednost za stupac na temelju vrijednosti drugog stupca. Na primjer, možete ažurirati vrijednost plaće na temelju razine vještine. Budući da se razina vještine može promijeniti nekoliko puta tijekom vremena, možete se naći u ažuriranju takvog stupca.

Naučimo kako možemo koristiti klauzulu UPDATE u Oracleu za postavljanje novih vrijednosti za zadane stupce tablice.







Izjava Oracle UPDATE

Za ažuriranje vrijednosti u postojećoj tablici koristimo naredbu UPDATE kao što je prikazano u sljedećoj sintaksi:



AŽURIRAJ table_name
SET stupac1 = nova_vrijednost1,
stupac2 = nova_vrijednost2,
...
stupacN = nova_vrijednostN
GDJE stanje;

Gdje:



  1. Table_name predstavlja naziv tablice koju želite ažurirati.
  2. Column_1, column_2,…,columnN definirajte nazive stupaca koje želite ažurirati.
  3. Nova_vrijednost1, nova_vrijednost2,…nova_vrijednostN omogućuju postavljanje nove vrijednosti za svaki stupac.
  4. Uvjet je izborna klauzula koja vam omogućuje da ograničite ažurirane retke. Ako preskočite uvjetnu klauzulu, izjava ažurira sve retke u tablici.

Primjer Oracle ažuriranja

Pogledajmo primjer iz stvarnog svijeta kako možemo koristiti naredbu UPDATE u Oracleu:





CREATE TABLE baze podataka (
ime VARCHAR2 ( pedeset ) NIJE NULL,
default_port NUMBER,
najnovija_verzija VARCHAR2 ( dvadeset ) NIJE NULL,
tip VARCHAR2 ( dvadeset ) NIJE NULL,
jezik VARCHAR2 ( dvadeset ) NIJE NULL
) ;

Navedena izjava stvara tablicu za pohranu najnovijih baza podataka, zadanog porta, najnovije verzije baze podataka, vrste baze podataka i programskog jezika koji se koriste za izradu baze podataka.

Možemo umetnuti neke ogledne zapise kao što je prikazano u nastavku:



INSERT INTO baze podataka ( ime, zadani_port, najnovija_verzija, tip , Jezik )
VRIJEDNOSTI ( 'Oracle' , 1521 , '19c' , 'relacijski' , 'SQL' ) ;
INSERT INTO baze podataka ( ime, zadani_port, najnovija_verzija, tip , Jezik )
VRIJEDNOSTI ( 'MySQL' , 3306 , '8.0' , 'relacijski' , 'SQL' ) ;
INSERT INTO baze podataka ( ime, zadani_port, najnovija_verzija, tip , Jezik )
VRIJEDNOSTI ( 'PostgreSQL' , 5432 , '13' , 'relacijski' , 'SQL' ) ;
INSERT INTO baze podataka ( ime, zadani_port, najnovija_verzija, tip , Jezik )
VRIJEDNOSTI ( 'MongoDB' , 27017 , '4.4' , 'bez odnosa' , 'JavaScript' ) ;
INSERT INTO baze podataka ( ime, zadani_port, najnovija_verzija, tip , Jezik )
VRIJEDNOSTI ( 'Microsoft SQL Server' , 1433 , '2017' , 'relacijski' , 'T-SQL' ) ;
INSERT INTO baze podataka ( ime, zadani_port, najnovija_verzija, tip , Jezik )
VRIJEDNOSTI ( 'Apache Cassandra' , 9042 , '4.0' , 'bez odnosa' , 'Java' ) ;
INSERT INTO baze podataka ( ime, zadani_port, najnovija_verzija, tip , Jezik )
VRIJEDNOSTI ( 'Redis' , 6379 , '6.0' , 'bez odnosa' , 'C++' ) ;
INSERT INTO baze podataka ( ime, zadani_port, najnovija_verzija, tip , Jezik )
VAUES ( 'MariaDB' , 3306 , '10.5' , 'relacijski' , 'SQL' ) ;
INSERT INTO baze podataka ( ime, zadani_port, najnovija_verzija, tip , Jezik )
VRIJEDNOSTI ( 'SQLite' , nula, '3.34' , 'relacijski' , 'C' ) ;
INSERT INTO baze podataka ( ime, zadani_port, najnovija_verzija, tip , Jezik )
VRIJEDNOSTI ( 'neo4j' , 7474 , '4.1' , 'bez odnosa' , 'Java' ) ;

NAPOMENA: default_port za SQLite bazu podataka postavljen je na NULL jer SQLite nema zadani broj porta.

Rezultirajuća tablica:

Oracle tablica ažuriranja

Pretpostavimo da želimo ažurirati latest_version, naziv i zadani port za Microsoft SQL Server. Možemo izvršiti upit ažuriranja kao što je prikazano u nastavku:

ažurirati baze podataka
postaviti ime = 'MS SQL poslužitelj' ,
default_port = 1400 ,
najnovija_verzija = '2022'
gdje ime poput 'Microsoft SQL Server' ;

Upit bi trebao locirati red gdje je naziv KAO 'Microsoft SQL Server' i promijeniti naziv, default_port i latest_version na nove vrijednosti.

NAPOMENA: prethodni podaci služe za demonstraciju. Možda neće točno odražavati ažurne informacije o bazama podataka.

Nakon ažuriranja, možemo vidjeti novu tablicu za promjene podataka kako slijedi:

Kao što vidimo, tablica odražava ažurirane promjene.

Zaključak

U ovom vodiču naišli ste na naredbu UPDATE koja vam omogućuje ažuriranje jednog ili više stupaca u tablici baze podataka.

Međutim, kao i većina postupaka s bazama podataka, dolazi s potencijalnim nedostacima. Na primjer:

  1. Performanse – Izvođenje ažuriranja na više stupaca zahtijeva više vremena i resursa od ažuriranja jednog stupca. Ovo postaje značajnije, posebno kada se množi veliki broj redaka sa složenim podacima.
  2. Integritet podataka – Još jedna briga pri ažuriranju više stupaca je integritet podataka. Ako se neispravno koristi, ažuriranje više stupaca može dovesti do oštećenja ili gubitka podataka. Možete zaroniti u razne tehnike normalizacije podataka kako biste to ublažili, ali uvijek je dobro biti oprezan. Također možete testirati svoje upite za ažuriranje u razvoju prije nego što ih prebacite u proizvodnju.
  3. Složenost upita – Slično tome, pokretanje izjava ažuriranja može povećati složenost vaših upita, čineći ih težim za čitanje, održavanje ili otklanjanje pogrešaka.

Na kraju, ažuriranje više stupaca u Oracle bazi podataka može biti korisno u nekim situacijama. Ipak, važno je razmotriti korištenje najboljih praksi kako biste smanjili rizike.