Makaleyi İndirMakaleyi İndir

Oracle’da çalışırken bazı kayıtların kopyalarının olduğunu görebilirsin. Bu kopya satırları, onları tanımlayıp satır kimliklerini veya satır adreslerini kullanarak silebilirsin. Başlamadan önce, kayıtları sildikten sonra referans almaya ihtiyacın olursa diye yedek bir tablo oluşturmalısın.

Yöntem 1
Yöntem 1 / 4:

Kopyanı Tanımlamak

Makaleyi İndir
  1. How.com.vn Türkçe: Step 1 Kopyayı tanımla.
    Bu durumda, örnek kopya "Ali"yi tanımla. Aşağıdaki SQL’i girerek, silmeye çalıştığın kayıtların kopya olduğundan emin ol.
  2. Step 2 "Adlar" adında bir sütundan tanımlamak.
    "Adlar" adındaki sütun örneğinde, "sutun_adi"ni Adlar ile değiştirirsin.
  3. How.com.vn Türkçe: Step 3 Diğer sütunlardan tanımlamak.
    Kopyayı, mesela Ali’nin adı yerine yaşı gibi başka bir sütun ile tanımlaya çalışıyorsan "sutun_adi"na "Yaslar" yazarsın. Başka sütunlar için de aynısını yaparsın.
    select sutun_adi, count(sutun_adi) from tablogroup by sutun_adihaving count (sutun_adi) > 1;
    Reklam
Yöntem 2
Yöntem 2 / 4:

Tek Bir Kopyayı Silmek

Makaleyi İndir
  1. Step 1 "Adlardan ad" seç.
    Standard Query Language’in (Standart Sorgu Dili) kısaltması olan "SQL"den sonra "select ad from adlar" komutunu gir.
  2. How.com.vn Türkçe: Step 2 Kopya adı içeren tüm satırları sil.
    "SQL"den sonra, "delete from adlar where ad='Ali'; yaz." Burada büyük harfin önemli olduğunu bil. Bu komut, "Ali" adındaki tüm satırları siler. "SQL"den sonra "commit" yaz. [1]
  3. How.com.vn Türkçe: Step 3 Satırı kopya olmadan tekrar gir.
    "Ali" örnek isminde olan tüm satırları sildiğine göre "insert into ad values ('Ali') komutuyla tekrar bir kayıt girebilirsin. "SQL"den sonra yeni satırını oluşturmak için "commit" yaz.
  4. How.com.vn Türkçe: Step 4 Yeni listene bak.
    Yukarıdaki adımları tamamladıktan sonra "select * from adlar" yazarak artık kopya kaydının olmadığından emin olabilirsin.
    SQL > select ad from adlar;NAME------------------------------AliCahitTanAlirows selected (satırları seçildi).SQL > delete from adlar where ad='Ali';rows deleted (satırları silindi).SQL > commit;Commit complete (işlendi).SQL > insert into adlar values ('Ali');row created (satır oluşturuldu).SQL > commit;Commit complete (işlendi).SQL > select * from adlar;NAME------------------------------AliCahitTanrows selected (satırları seçildi).
    Reklam
Yöntem 3
Yöntem 3 / 4:

Birden Fazla Kopyayı Silmek

Makaleyi İndir
  1. How.com.vn Türkçe: Step 1 Silmek istediğin satır kimliğini seç.
    "SQL"den sonra "select satir_kimligi, ad from adlar;" yaz.
  2. How.com.vn Türkçe: Step 2 Kopyayı sil.
    Kopya kayıtları silmek için "SQL"den sonra "delete from adlar a where satir_kimligi > (select min(satir_kimligi) from adlar b where b.ad=a.ad);" yaz. [2]
  3. How.com.vn Türkçe: Step 3 Kopya var mı bak.
    Yukarıdakini yaptıktan sonra hâlâ kopya kayıt var mı bakmak için önce "select satir_kimligi, ad from adlar;" komutunu sonra da "commit" komutunu kullan.
    SQL > select satir_kimligi,ad from adlar;SATIR_KIMLIGI              AD------------------ ------------------------------AABJnsAAGAAAdfOAAA AliAABJnsAAGAAAdfOAAB AliAABJnsAAGAAAdfOAAC CahitAABJnsAAGAAAdfOAAD TanAABJnsAAGAAAdfOAAF Alirows selected (satırları seçildi).SQL > delete from adlar awhere satir_kimligi > (select min(satir_kimligi) from adlar bwhere b.ad=a.ad);rows deleted (satırları silindi).SQL > select satir_kimligi,ad from adlar;SATIR_KIMLIGI              AD------------------ ------------------------------AABJnsAAGAAAdfOAAA AliAABJnsAAGAAAdfOAAC CahitAABJnsAAGAAAdfOAAD Tanrows selected (satırları seçildi).SQL > commit;Commit complete (işlendi).
    Reklam
Yöntem 4
Yöntem 4 / 4:

Satırları Sütunlarla Silmek

Makaleyi İndir
  1. How.com.vn Türkçe: Step 1 Satırlarını sil.
    Satırlarını görmek için "SQL"den sonra "select * from adlar;" yaz.
  2. How.com.vn Türkçe: Step 2 Kopya satırları sütunlarını tanımlayarak sil.
    Kopya kayıtları silmek için "SQL"den sonra "delete from adlar a where satir_kimligi > (select min(satir_kimligi) from adlar b where b.ad=a.ad and b.yas=a.yas); yaz".[3]
  3. How.com.vn Türkçe: Step 3 Kopya var mı diye kontrol et.
    Yukarıdaki adımları tamamladıktan sonra kopya kayıtları başarılı bir şekilde silip silemediğini kontrol etmek için "select * from adlar" yaz, ardından "commit" yaz.
    SQL > select * from adlar;AD                                  YAS------------------------------ ----------Ali                                   50Cahit                                 51Tan                                    52Ali                                   50rows selected (satırları seçildi).SQL > delete from adlar awhere satir_kimligi > (select min(satir_kimligi) from adlar bwhere b.ad=a.adand b.yas=a.yas);row deleted (satır silindi).SQL > select * from adlar;AD                                  YAS------------------------------ ----------Ali                                   50Cahit                                 51Tan                                    52rows selected (satırları seçildi).SQL > commit;Commit complete (işlendi).
    Reklam

Uyarılar

  • Herhangi bir silme işlemi olmadan önce (soru varsa diye) tabloda ne olduğunu gösterebilmek için kendi oturumunda yedek bir tablo oluştur.
    SQL > create table ali.adlar_backup as select * from adlar;Table created (tablo oluşturuldu).
Reklam

Bu How.com.vn makalesi hakkında

How.com.vn Türkçe: How.com.vn Kadrosu
Ortak yazarlar :
How.com.vn Yazarı
Bu makale editörler ve araştırmacılardan oluşan, makalenin doğruluğu ile kapsamlılığını onaylayan, eğitimli bir ekip tarafından ortaklaşa yazılmıştır.

How.com.vn’ın İçerik Yönetim Ekibi, yüksek kalite standartlarımızın sağladığından emin olmak için, editör ekibimizden gelen her çalışmayı dikkatli bir şekilde denetler. Bu makale 1.581 defa görüntülenmiştir.
Bu sayfaya 1.581 defa erişilmiş.

Bu makale işine yaradı mı?

⚠️ Disclaimer:

Content from Wiki How Türkçe language website. Text is available under the Creative Commons Attribution-Share Alike License; additional terms may apply.
Wiki How does not encourage the violation of any laws, and cannot be responsible for any violations of such laws, should you link to this domain, or use, reproduce, or republish the information contained herein.

Notices:
  • - A few of these subjects are frequently censored by educational, governmental, corporate, parental and other filtering schemes.
  • - Some articles may contain names, images, artworks or descriptions of events that some cultures restrict access to
  • - Please note: Wiki How does not give you opinion about the law, or advice about medical. If you need specific advice (for example, medical, legal, financial or risk management), please seek a professional who is licensed or knowledgeable in that area.
  • - Readers should not judge the importance of topics based on their coverage on Wiki How, nor think a topic is important just because it is the subject of a Wiki article.

Reklam