Oracle Database sistemlerinde Data manipüle işlemleri yaparken özellikle Test Database ortamlarında karşınıza Update ve Edit işlemi yaparken ORA-14402 Updating Partition Key Column Would Cause A Partition Change hatası ile karşılaşabilirsiniz. Bu hata genelde ilgili tabloda Grant yetkinizin olmadığını göstermektedir. Tam yetki her zaman Database Admin’leri tarafında olup testçi ve analizciler için bu yetkiler her tablo ve şemalarda olmayabilir. En temel çözüm ise Database üzerinde işlem yaptığınız kullanıcı (User) için DML yetkisi yani Grant vermekten geçer. Bazı durumlarda Grant yetkisini tablo için alsanız bile bir kolonu Update ederken yine Partition hatası alabilirsiniz. Bunun ise iki çözümü vardır. İlk olanı TOAD üzerinden Data sekmesi yanındaki Partitions kısmına gelip o tabloya bağlı diğer kolonları DISABLED konumdan ENABLED konuma getirmeniz gerekmektedir. Tabii bir testçi olarak buna yetkiniz olmayabilir bunun için üzerinde çalışma yaptığınız Database Admin yetkilisi ile görüşmeniz gerekebilir. Eğer Data manipüle etmek istediğiniz kolonun başka bir tablonun kolonu ile bağlantısı yoksa bu Partition hatasını almazsınız ve direkt Update işlemi yapabilirsiniz. İkinci çözüm olarak ise bunu daha çok testçi arkadaşlar tercih edecektir; ilgili tablonun Insert SQL cümleciğini komple alıp sonra tablodan o Data blokunu komple silmeniz (DELETE) etmenizdir. Sonrasında Insert SQL kodu üzerinde manipüle edeceğiniz yeri değiştirip tekrardan SQL Script’i TOAD üzerinden çalıştırmanız yeterli olacaktır. Bu sayede Partition hatası almaz ve direkt kendi işinizi kendiniz halletmiş olursunuz.
Oracle etiketine sahip kayıtlar gösteriliyor. Tüm kayıtları göster
Oracle etiketine sahip kayıtlar gösteriliyor. Tüm kayıtları göster
15 Mart 2023
26 Şubat 2017
Oracle PL/SQL XMLAGG Kullanımı ve Sayısal Veri Üzerinde İşlem Yapmak
Oracle'da Column yani kolon veya kolonlar içerisindeki verileri tek satırda göstermek istediğimiz zaman XMLAGG, XMLELEMENT, EXTRACT komutlarını kullanırız. Bunu kullanmamızın amacı bazı Join yaptığımız kolonlarda ortak ID'lerin birden fazla farklı verisi olabilir, Bunları tek satırda görme ihtiyacı duyabiliriz. Örnek ile HR Schema üzerinde anlatacak olursak;
Burak Avcıoğlu Official Blog
13 Şubat 2017
Oracle'da Temp Tablo Oluşturmak ve Silmek (Temporary Table)
Temporary Tables, Geçici tablolar bir transaction veya session süresince ara sonuç kümeleri saklayan tablolardır. Buna ihtiyaç duymamızın sebebi Data testi yaparken tablo birleştirme işlemlerinden sonra dönen sonuç üzerinde çalışacak isek, gerçek Datanın bozulmaması için Datayı geçici bir tabloda tutarız ve işimiz bitince bu tabloyu sileriz.
Burak Avcıoğlu Official Blog
Kaydol:
Kayıtlar (Atom)