4 mënyra për të fshirë regjistrimet e kopjuara në Oracle

Përmbajtje:

4 mënyra për të fshirë regjistrimet e kopjuara në Oracle
4 mënyra për të fshirë regjistrimet e kopjuara në Oracle

Video: 4 mënyra për të fshirë regjistrimet e kopjuara në Oracle

Video: 4 mënyra për të fshirë regjistrimet e kopjuara në Oracle
Video: 2 mënyrat për të mbajtur mend çdo gjë 2024, Prill
Anonim

Kur punoni në Oracle, mund të gjeni se disa nga regjistrimet tuaja kanë kopje. Ju mund t'i fshini këto rreshta të kopjuar duke i identifikuar ato dhe duke përdorur RowID -in e tij, ose adresën e rreshtit. Para se të filloni, duhet të krijoni një tabelë rezervë në rast se keni nevojë t'i referoni pasi të keni fshirë të dhënat.

Hapa

Metoda 1 nga 4: Identifikimi i Dublikatit tuaj

Fshini regjistrimet e kopjuara në Oracle Hapi 1
Fshini regjistrimet e kopjuara në Oracle Hapi 1

Hapi 1. Identifikoni kopjen

Në këtë rast, identifikoni shembullin e kopjuar, "Alan". Sigurohuni që regjistrimet që po përpiqeni të fshini janë në fakt kopjuar duke futur SQL më poshtë.

Fshini regjistrimet e kopjuara në Oracle Hapi 2
Fshini regjistrimet e kopjuara në Oracle Hapi 2

Hapi 2. Identifikimi nga një kolonë e quajtur "Emrat

"Në rastin e një kolone të quajtur" Emrat ", ju do të zëvendësoni" emrin e kolonës "me Emra.

Fshini regjistrimet e kopjuara në Oracle Hapi 3
Fshini regjistrimet e kopjuara në Oracle Hapi 3

Hapi 3. Identifikimi nga kolonat e tjera

Nëse po përpiqeshit të identifikonit dublikatën me një kolonë tjetër, për shembull moshën e Alanit në vend të emrit të tij, do të futnit "Moshat" në vend të "emrit_kolonës" etj.

zgjidhni emrin e kolonës, numërimin (emrin e kolonës) nga grupi i tabelës sipas emrit të kolonës që ka numërim (emri i kolonës)> 1;

Metoda 2 nga 4: Fshirja e një kopjimi të vetëm

Fshini regjistrimet e kopjuara në Oracle Hapi 4
Fshini regjistrimet e kopjuara në Oracle Hapi 4

Hapi 1. Zgjidhni "emrin nga emrat

"Pas" SQL ", që do të thotë" Gjuha standarde e pyetjes ", futni" zgjidhni emrin nga emrat ".

Fshini regjistrimet e kopjuara në Oracle Hapi 5
Fshini regjistrimet e kopjuara në Oracle Hapi 5

Hapi 2. Fshini të gjitha rreshtat me emrin e kopjuar

Pas "SQL", futni "fshini nga emrat ku emri = 'Alan';." Vini re se kapitalizimi është i rëndësishëm këtu, kështu që kjo do të fshijë të gjitha rreshtat e quajtur "Alan". Pas "SQL", futni "commit".

Fshini regjistrimet e kopjuara në Oracle Hapi 6
Fshini regjistrimet e kopjuara në Oracle Hapi 6

Hapi 3. Merrni me qira rreshtin pa kopjuar

Tani që i keni fshirë të gjitha rreshtat me shembullin e emrit "Alan", mund ta futni një mbrapa duke futur "fut në vlerat e emrit ('Alan');." Pas "SQL", futni "commit" për të krijuar rreshtin tuaj të ri.

Fshini regjistrimet e kopjuara në Oracle Hapi 7
Fshini regjistrimet e kopjuara në Oracle Hapi 7

Hapi 4. Shihni listën tuaj të re

Pasi të keni përfunduar hapat e mësipërm, mund të kontrolloni për t'u siguruar që nuk keni më regjistrime të kopjuara duke futur "zgjidhni * nga emrat".

SQL> zgjidhni emrin nga emrat; EMRI ------------------------------ Alan Carrie Tom Alan rreshtat e zgjedhur. SQL> fshi nga emrat ku emri = 'Alan'; rreshtat e fshirë. SQL> kryej; Angazhimi i plotë. SQL> fut në vlerat e emrave ('Alan'); rreshti i krijuar. SQL> kryej; Angazhimi i plotë. SQL> zgjidhni * nga emrat; EMRI ------------------------------ Alan Carrie Tom rreshta të zgjedhur.

Metoda 3 nga 4: Fshirja e Dyfishimeve të Shumëfishta

Fshini regjistrimet e kopjuara në Oracle Hapi 8
Fshini regjistrimet e kopjuara në Oracle Hapi 8

Hapi 1. Zgjidhni RowID që dëshironi të fshini

Pas "SQL", futni "zgjidhni rowid, emri nga emrat;."

Fshini regjistrimet e kopjuara në Oracle Hapi 9
Fshini regjistrimet e kopjuara në Oracle Hapi 9

Hapi 2. Fshini kopjen

Pas "SQL", "enter" fshini nga emrat a ku rowid> (zgjidhni min (rowid) nga emrat b ku b.name = a.name); " për të fshirë regjistrimet e kopjuara.

Fshini regjistrimet e kopjuara në Oracle Hapi 10
Fshini regjistrimet e kopjuara në Oracle Hapi 10

Hapi 3. Kontrolloni për kopjime

Pasi të keni përfunduar sa më sipër, komandat kontrolloni për të parë nëse keni akoma regjistrime të kopjuara duke futur "zgjidhni rowid, name from names;" dhe pastaj "angazhohem".

SQL> zgjidhni rowid, emër nga emrat; EMRI I LART ------------------ ------------------------------ AABJnsAAGAAAdfOAAA Alan AABJnsAAGAAAdfOAAB Alan AABJnsAAGAAAdfOAAC Carrie AABJnsAAGAAdfOAAD Tom AABJnsAAGAAAdfOAAF Alan rreshta të zgjedhur. SQL> fshini nga emrat a ku rowid> (zgjidhni min (rowid) nga emrat b ku b.name = a.name); rreshtat e fshirë. SQL> zgjidhni rowid, emër nga emrat; EMRI I LART ------------------ ------------------------------ AABJnsAAGAAAdfOAAA Alan AABJnsAAGAAAdfOAAC Carrie AABJnsAAGAAAdfOAAD Rreshtat Tom të zgjedhur. SQL> kryej; Angazhimi i plotë.

Metoda 4 nga 4: Fshirja e rreshtave me kolona

Fshini regjistrimet e kopjuara në Oracle Hapi 11
Fshini regjistrimet e kopjuara në Oracle Hapi 11

Hapi 1. Zgjidhni rreshtat tuaj

Pas "SQL", futni "zgjidhni * nga emrat;" për të parë rreshtat e tu.

Fshini regjistrimet e kopjuara në Oracle Hapi 12
Fshini regjistrimet e kopjuara në Oracle Hapi 12

Hapi 2. Fshini rreshtat e kopjuar duke identifikuar kolonën e tyre

Pas "SQL" "hyni" fshini nga emrat a ku rowid> (zgjidhni min (rowid) nga emrat b ku b.name = a.name dhe b.age = a.age); " për të fshirë regjistrimet e kopjuara.

Fshini regjistrimet e kopjuara në Oracle Hapi 13
Fshini regjistrimet e kopjuara në Oracle Hapi 13

Hapi 3. Kontrolloni për kopjime

Pasi të keni përfunduar hapat e mësipërm, futni "zgjidhni * nga emrat;" dhe pastaj "kryej" për të kontrolluar që i keni fshirë regjistrimet e kopjuara me sukses.

SQL> zgjidhni * nga emrat; EMRI MOSHA ---------------------------------------------- Alan 50 Carrie 51 Tom 52 Alan 50 rreshtat e zgjedhur. SQL> fshini nga emrat a ku rowid> (zgjidhni min (rowid) nga emrat b ku b.name = a.name dhe b.age = a. moshë); rreshti u fshi. SQL> zgjidhni * nga emrat; EMRI MOSHA ---------------------------------------------- Alan 50 Carrie 51 Tom 52 rreshta të zgjedhur Me SQL> kryej; Angazhimi i plotë.

Paralajmërimet

  • Krijoni një tabelë rezervë në hyrjen tuaj që mund ta përdorni për të treguar atë që ishte atje para se të ndodhte ndonjë fshirje (në rast se ka ndonjë pyetje).

    SQL> krijoni tabelën alan.names_backup si të zgjedhur * nga emrat; Tabela e krijuar.

Recommended: