Oracle atjaunina vairākas kolonnas

Oracle Atjaunina Vairakas Kolonnas



Šī apmācība jums iemācīs, kā atjaunināt vairākas kolonnas datu bāzes tabulā, izmantojot komandu UPDATE.

Vairāku kolonnu atjaunināšana datu bāzes tabulā ir izplatīta parādība datu bāzes administratoriem. Piemēram, var būt nepieciešams iestatīt jaunu vērtību kolonnai, pamatojoties uz citas kolonnas vērtību. Piemēram, varat atjaunināt algas vērtību, pamatojoties uz prasmju līmeni. Tā kā prasmju līmenis laika gaitā var mainīties vairākas reizes, varat atrast sev atjauninājumus šādā kolonnā.

Ļaujiet mums uzzināt, kā mēs varam izmantot Oracle klauzulu UPDATE, lai iestatītu jaunās vērtības dotajām tabulas kolonnām.







Oracle UPDATE paziņojums

Lai atjauninātu vērtību esošajā tabulā, mēs izmantojam priekšrakstu UPDATE, kā parādīts šajā sintaksē:



ATJAUNINĀT tabulas_nosaukumu
SET 1. kolonna = new_value1,
kolonna2 = new_value2,
...
kolonnaN = jauna_vērtībaN
KUR nosacījums;

Kur:



  1. Tabulas_nosaukums apzīmē tās tabulas nosaukumu, kuru vēlaties atjaunināt.
  2. Kolonna_1, kolonna_2,…, kolonnaN definē to kolonnu nosaukumus, kuras vēlaties atjaunināt.
  3. New_value1, new_value2,… new_valueN ļauj iestatīt jaunu vērtību katrai kolonnai.
  4. Nosacījums ir izvēles klauzula, kas ļauj ierobežot atjauninātās rindas. Ja izlaižat nosacījumu klauzulu, priekšraksts atjaunina visas tabulas rindas.

Oracle atjaunināšanas piemērs

Apskatīsim reālu piemēru par to, kā Oracle var izmantot UPDATE paziņojumu:





CREATE TABLE datu bāzes (
nosaukums VARCHAR2 ( piecdesmit ) NAV NULL,
default_port NUMBER,
jaunākā_versija VARCHAR2 ( divdesmit ) NAV NULL,
veids VARCHAR2 ( divdesmit ) NAV NULL,
valoda VARCHAR2 ( divdesmit ) NAV NULL
) ;

Sniegtais priekšraksts izveido tabulu, kurā glabājas jaunākās datu bāzes, noklusējuma ports, jaunākā datu bāzes versija, datu bāzes veids un programmēšanas valoda, kas tiek izmantota datu bāzes izveidošanai.

Mēs varam ievietot dažus ierakstu paraugus, kā parādīts tālāk.



INSERT INTO datu bāzēs ( nosaukums, noklusējuma_ports, jaunākā_versija, veids , valoda )
VĒRTĪBAS ( 'Orākuls' , 1521. gads , '19c' , 'attiecības' , 'SQL' ) ;
INSERT INTO datu bāzēs ( nosaukums, noklusējuma_ports, jaunākā_versija, veids , valoda )
VĒRTĪBAS ( 'MySQL' , 3306 , '8.0' , 'attiecības' , 'SQL' ) ;
INSERT INTO datu bāzēs ( nosaukums, noklusējuma_ports, jaunākā_versija, veids , valoda )
VĒRTĪBAS ( 'PostgreSQL' , 5432 , '13' , 'attiecības' , 'SQL' ) ;
INSERT INTO datu bāzēs ( nosaukums, noklusējuma_ports, jaunākā_versija, veids , valoda )
VĒRTĪBAS ( 'MongoDB' , 27017 , '4,4' , 'neatkarīgs' , 'JavaScript' ) ;
INSERT INTO datu bāzēs ( nosaukums, noklusējuma_ports, jaunākā_versija, veids , valoda )
VĒRTĪBAS ( 'Microsoft SQL Server' , 1433. gads , '2017' , 'attiecības' , 'T-SQL' ) ;
INSERT INTO datu bāzēs ( nosaukums, noklusējuma_ports, jaunākā_versija, veids , valoda )
VĒRTĪBAS ( 'Apache Cassandra' , 9042 , '4,0' , 'neatkarīgs' , 'Java' ) ;
INSERT INTO datu bāzēs ( nosaukums, noklusējuma_ports, jaunākā_versija, veids , valoda )
VĒRTĪBAS ( 'Rēdis' , 6379 , '6.0' , 'neatkarīgs' , 'C++' ) ;
INSERT INTO datu bāzēs ( nosaukums, noklusējuma_ports, jaunākā_versija, veids , valoda )
VAUES ( 'MariaDB' , 3306 , '10,5' , 'attiecības' , 'SQL' ) ;
INSERT INTO datu bāzēs ( nosaukums, noklusējuma_ports, jaunākā_versija, veids , valoda )
VĒRTĪBAS ( 'SQLite' , nulle, '3,34' , 'attiecības' , 'C' ) ;
INSERT INTO datu bāzēs ( nosaukums, noklusējuma_ports, jaunākā_versija, veids , valoda )
VĒRTĪBAS ( 'neo4j' , 7474 , '4.1' , 'neatkarīgs' , 'Java' ) ;

PIEZĪME. SQLite datu bāzes noklusējuma_ports ir iestatīts uz NULL, jo SQLite nav noklusējuma porta numura.

Rezultātu tabula:

Oracle atjaunināšanas tabula

Pieņemsim, ka mēs vēlamies atjaunināt Microsoft SQL Server jaunāko_versiju, nosaukumu un noklusējuma portu. Mēs varam izpildīt atjaunināšanas vaicājumu, kā parādīts tālāk.

atjaunināt datu bāzes
komplekts vārds = 'MS SQL Server' ,
noklusējuma_ports = 1400 ,
jaunākā_versija = '2022'
kur nosaukums patīk 'Microsoft SQL Server' ;

Vaicājumā jāatrod rinda, kuras nosaukums ir LIKE “Microsoft SQL Server”, un jāmaina nosaukums, noklusējuma_ports un jaunākā_versija uz jaunajām vērtībām.

PIEZĪME: Iepriekšējie dati ir paredzēti demonstrācijas nolūkiem. Tas var precīzi neatspoguļot jaunāko informāciju par datu bāzēm.

Kad tas ir atjaunināts, mēs varam skatīt jauno datu izmaiņu tabulu šādi:

Kā redzam, tabulā ir atspoguļotas atjauninātās izmaiņas.

Secinājums

Šajā apmācībā jūs saskārāties ar paziņojumu UPDATE, kas ļauj atjaunināt vienu vai vairākas datu bāzes tabulas kolonnas.

Tomēr, tāpat kā lielākā daļa datubāzes prakses, tai ir iespējami trūkumi. Piemēram:

  1. Veiktspēja — vairāku kolonnu atjaunināšana ir laikietilpīgāka un resursietilpīgāka nekā vienas kolonnas atjaunināšana. Tas kļūst nozīmīgāks, it īpaši, reizinot lielu skaitu rindu ar sarežģītiem datiem.
  2. Datu integritāte — vēl viena problēma, atjauninot vairākas kolonnas, ir datu integritāte. Ja to lieto nepareizi, vairāku kolonnu atjaunināšana var izraisīt datu bojājumus vai zudumus. Lai to mazinātu, varat izpētīt dažādas datu normalizēšanas metodes, taču vienmēr ir labi būt uzmanīgiem. Varat arī pārbaudīt savus atjaunināšanas vaicājumus izstrādes procesā, pirms tos pāriet uz ražošanu.
  3. Vaicājumu sarežģītība — tāpat atjaunināšanas paziņojumu izpilde var palielināt jūsu vaicājumu sarežģītību, padarot tos grūtāk lasāmus, uzturot vai atkļūdojamus.

Galu galā dažās situācijās var būt noderīga vairāku kolonnu atjaunināšana Oracle datubāzē. Tomēr ir svarīgi apsvērt labākās prakses izmantošanu, lai samazinātu riskus.