SQL etiketine sahip kayıtlar gösteriliyor. Tüm kayıtları göster
SQL etiketine sahip kayıtlar gösteriliyor. Tüm kayıtları göster

15 Mart 2023

Oracle Database ORA-14402 Updating Partition Key Column Would Cause A Partition Change Hatası ve Çözümü

Hiç yorum yok:
Oracle Database ORA-14402 Updating Partition Key Column Would Cause A Partition Change

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.

29 Aralık 2020

Oracle Database ORA-01855: ÖÖ/Ö.Ö. veya ÖS/Ö.S. Gerekli Hatası ve Çözümü

Hiç yorum yok:
Oracle Database ORA-01855: ÖÖ/Ö.Ö. veya ÖS/Ö.S. Gerekli Hatası ve Çözümü

Oracle tabloları üzerinde test çalışması yaparken yeni karşılaştığım bir hatayı ve çözümünü sizlerle paylaşacağım. Java'da yazdığım data maniple testi sırasında bu hatayı almıştım. Oracle Database'de bir veriyi güncellemek istediğimde Java kodu ile yazdığım JUnit testi ile gönderdiğim test kodu aşağıdaki gibi konsolda hata mesajı verdi.

* ORA-01855: ÖÖ/Ö.Ö. veya ÖS/Ö.S. Gerekli
* ORA-01855: AM/A.M. or PM/P.M. Required

24 Mart 2020

TOAD Kullanarak Oracle Veritabanında Şema'dan Şemaya Data Taşımak

Hiç yorum yok:
TOAD Kullanarak Oracle Veritabanında Şema'dan Şemaya Data Taşımak

Oracle veritabanında TOAD Client kullanarak Şemalar arası (Schema to Schema) aynı tabloya data taşıma işleminin kısayolunu sizlerle paylaşacağım. İlk olarak TOAD arayüzünde hem kaynak veritabanını hemde tablonun atılacağı hedef veritabanına Connection yapmanız gerekmektedir.

22 Şubat 2020

Oracle Database ile Yapılmış Bir Projenin Kurulum (Installation-Delta) Scriptlerini Ayrıştırmak

Hiç yorum yok:
Oracle Database ile Yapılmış Bir Projenin Kurulum (Installation-Delta) Scriptlerini Ayrıştırmak

Yazılım süreçlerinde bazen bir projenin kopyasını almanız veya o projenin temel mimari kodlarını ayrıştırıp (İzolasyon İşlemi) başka yerde kullanmanız gerekebilir. Bu işlemi hem kod tarafında hem de Database tarafında yapmanız gerekmektedir. Veri tabanı kısmındaki ayrıştırma işlemlerini genelde DBA olarak bilinen Database Admin'ler yapar. Bu makaleyi yazmamdaki temel amaç bir Test Mühendisinin de en azından Database'deki ilişkileri bir nevi olsun öğrenmesi ve tatbik etmesidir.

Bir yazılım projesinin veri tabanı ayrıştırma operasyonu yapılırken ilk çalıştırılacak olan Installation veya Delta Script olarak biline sıralı çalışan SQL deyimleri Table, Grant, Synonyms, Triggers, Insert'ler, Index ve Sequences gibi ayrılarak belli bir sıra içerisinde yapılmaktadır.

2 Nisan 2017

Oracle Database 11g Release 2'yi Bilgisayara Kurmak

Hiç yorum yok:

Oracle Database 11g Release 2'yi kişisel bilgisayarınıza kurmak için Google'da bilgisayarınızın işletim sistemi özelliğine göre aşağıdaki kelimeleri aratarak Oracle'ın resmi sitesine giriniz.

Oracle Database 11g Release 2 for Microsoft Windows 64-bit
Oracle Database 11g Release 2 for Microsoft Windows 32-bit

28 Mart 2017

Oracle'da Tablo Yedeklemek (Tables Backup) ve TOAD'da Database Yedeği Almak

Hiç yorum yok:

Oracle'da HR Schema üzerinde tablo yedekleme işlemlerinden bahsedeceğim. Bunun için DEPARTMENTS tablosunu örnek kullanacağım.

27 Mart 2017

DBMS_RANDOM.VALUE ile Data Hazırlamak ve Round, Trunc, Mod Fonksiyonları(Number Function)

Hiç yorum yok:
DBMS_RANDOM.VALUE ile Data Hazırlamak ve Round, Trunc, Mod Fonksiyonları(Number Function)

PL/SQL'de DBMS_RANDOM kullanarak Random Data hazırlama ve Sayı üretmeyi anlatacağım. Bunun için bir Stored Procedure yazacağız.

1) DBMS_RANDOM.VALUE ile Data Oluşturmak

Aşağıdaki örneği anlatmak gerekirse, Kişiler kayıt olduğu HR.MEMBERS tablosu içinde Kimlik numaralarının bulunduğu TCKN kolonuna rastgele 11 haneli Datalar oluşturmamız gerekir. Sorgudaki FOR i IN 1..10 LOOP kısmı kaç Row(Satır) oluşturacağımızı söyler. Ben burada 10 adet Data oluşturdum. TRUNC ile virgülden sonrasını aşağıya yuvarladım, DBMS_RANDOM.VALUE kullanarak 11 haneli sayı değerlerini girdim. Sorguyu çalıştırınca Random 10 adet Datanın üretildiğini göreceksiniz.

25 Mart 2017

PL/SQL Nedir? ve SQL Tipleri DDL-DML-DCL-TCL Nedir?

2 yorum:
PL/SQL Nedir? ve SQL Tipleri DDL-DML-DCL-TCL Nedir?

Oracle veritabanı dili olan PL/SQL, Oracle veri tabanı sistemlerinde Trigger ve Stored Procedure yazmak üzere geliştirilmiş temel sql komutlarının yanında programlamada akış kontrollerini ve değişkenleri kullanmaya olanak sağlayan yani yapısal dillere ait özelliklerin standart SQL'e eklenmesi sonucu oluşan bir dildir.

Stored Procedure: Database'de çoğunlukla Batch işlemlerinin tutulduğu ve Veri tabanı içinde çalışır durumda olan SQL kodlarıdır. Bu kodlar SQL Statement(deyimlerinden) daha hızlı ve performanslı çalışırlar. Yazılan SQL Query'ler(Sorgular) Veri tabanında Prepared(Hazır-Derlenmiş) olarak bulunduğundan tekrar tekrar Back-End(Server) tarafta derlenmez.

9 Mart 2017

Oracle PL/SQL Sorguları Ders 2 (Data Güncelleme ve Değiştirme)

Hiç yorum yok:
Oracle PL/SQL Sorguları Ders 2 (Data Güncelleme ve Değiştirme)

Oracle PL/SQL'de Data güncelleme ve değiştirme için bazı komutlar kullanırız. Bunlar; UPDATE, INSERT INTO, EDIT olup Data silme işlemleri içinse DELETE ve TRUNCATE sorgularını kullanırız.

26 Şubat 2017

Oracle PL/SQL XMLAGG Kullanımı ve Sayısal Veri Üzerinde İşlem Yapmak

Hiç yorum yok:
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;

19 Şubat 2017

Oracle PL/SQL Sorguları Ders 1

Hiç yorum yok:

Oracle PL/SQL çalışma sorguları Ders 1 başlığı altında toplayarak ilerleyen günlerde buna benzer başlıklar açmaya çalışacağım. Data sorgu ve test sırasında işinize yarayacak sorgu cümleciklerini ve kısa yollarını daha çok paylaşacağım. Örnek Database olarak Human Resources HR Schema üzerinden anlattım.

18 Şubat 2017

Oracle PL/SQL COUNT, GROUP BY, HAVING, ORDER BY Kullanımı

Hiç yorum yok:
Oracle PL/SQL COUNT, GROUP BY, HAVING, ORDER BY Kullanımı

Oracle PL/SQL'de COUNT, GROUP BY, HAVING, ORDER BY komutlarının kullanımlarını örnekle göstereceğim. Genelde verilerin sayısını bulmada veya kaç tane veriden kaç adet tekrarlamış gibi işlemleri bu operatörlerle yapıyoruz.

Oracle PL/SQL Verileri Sınırlama ve Sıralama Genel Komutları

Hiç yorum yok:
Oracle PL/SQL Verileri Sınırlama ve Sıralama Genel Komutları

Oracle PL/SQL'de verileri filtrelemek için kullanılan genel komutlar ve kısayollar dan bahsedeceğim. En çok kullanılan komutları burada toplamaya çalışacağım.

14 Şubat 2017

TOAD'da Oracle Database İlişki Şeması Çıkarmak (Entity Relationship Diagram)

Hiç yorum yok:
TOAD'da Oracle Database İlişki Şeması Çıkarmak (Entity Relationship Diagram)

TOAD'da Oracle Database'in ilişki semasını (Entity Relationship Diagram) çıkararak hangi tablo ve kolonların birbiri ile ilişkili olduğunu rahatlıkla görebilirsiniz. Ben örnek Database olarak HR Schema üzerinden anlatacağım

TOAD'a bağlanıp Oracle Database'e bağlandıktan sonra Menü kısmından Database sekmesini seçin. Report'dan ER Diagram kısmını seçiniz.

13 Şubat 2017

Oracle'da Temp Tablo Oluşturmak ve Silmek (Temporary Table)

Hiç yorum yok:
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.

12 Şubat 2017

PL/SQL Tablo Birleştirme, JOIN Komutları ve Alias Kullanımı

Hiç yorum yok:
PL/SQL Tablo Birleştirme, JOIN Komutları ve Alias Kullanımı

Oracle'da TOAD editörü üzerinden HR Schema üzerinden tablo birleştirme için kullanılan JOIN komutlarını ve Alias kullanımından bahsedeceğim.

Tablo birleştirme yaparken Gereksiz sütunların gelmesi engellenmeli, gerekmediği sürece SELECT ifadesinde * (Tüm kolonların gelmesi) kullanılmamalıdır.

Oracle ORA-00942 Table or View Does Not Exist Çözümü ve Diğer Oracle Hataları

Hiç yorum yok:
Oracle ORA-00942 Table or View Does Not Exist Hatası ve Çözümü

Oracle'da ORA-00942 Table or view does not exist (ORA-00942: tablo veya görüntü mevcut degil) hatasını TOAD üzerinden HR(Human Resource) kullanıcısı ile anlatacağım. PL/SQL çalışmak için HR(Human Resource) veri tabanını önerebilirim.

4 Şubat 2017

Oracle SQL Veri Tipleri (Oracle / PLSQL Data Types)

Hiç yorum yok:
Oracle SQL Veri Tipleri (Oracle / PLSQL Data Types)

Oracle / PLSQL'de kolonlar (Columns) için kullandığımız veri tiplerinden bahsedeceğim. Database'de bilgiler tablolar içerisinde tutulmaktadır. Tablomuzu tasarlarken; hangi kolonda hangi veriyi tutacağımızı tasarlayıp ona uygun veri tipini seçmeliyiz. Bu veri tipi karakter olabilir, sayısal bir değer olabilir veya tarih değeri olabilir.

30 Ocak 2017

Oracle Database 11g'de HR Schema Kullanıcı Kilidini Kaldırmak ve TOAD Bağlantısı Yapmak

1 yorum:
Oracle Database 11g'de HR Schema Veritabanı Kilidini Kaldırmak ve TOAD Bağlantısı Yapmak

Bilgisayarınıza Oracle Database 11g R2 kurduktan sonra HR Veri tabanını ve kullanıcısını kullanmak için bazı komutlarla kilidi açmak gerekir. HR kullanıcısı ile Veri tabanına yeni tablo ve kolonlar ekleyebilirsiniz.

İlk olarak Çalıştır(Run) kısmına cmd yazarak konsolu açıyoruz. cd C:\WINDOWS\System32 yazarak System32 dizini içine geliyoruz. Komut satırına sqlplus yazarak Oracle veri tabanına bağlanıyoruz.

16 Ocak 2017

Oracle Database 11g Release 2'yi Bilgisayardan Kaldırmak

Hiç yorum yok:
Oracle Database 11g Release 2'yi Bilgisayardan Kaldırmak

Windows 7 bilgisayarda Oracle Database 11g Release 2'yi bilgisayardan tamamen kaldırmayı anlatacağım. İlk olarak Computer ikonuna sağ tıklayıp Properties diyerek System kısmına geliniz. Advance System settings'e tıklayın açılan System Properties penceresinde Advance sekmesine gelin ve Environment Variables butonuna tıklayın.

System Variables kısmından Path kısmını bulun ve Edit diyerek aşağıdaki kısmı silin; C:\app\USERNAME\product\11.2.0\dbhome_1\bin;

Sildikten sonra OK diyerek System penceresinden çıkabilirsiniz. İkinci olarak Run'dan regedit yazarak Registry Editor'ü açınız.