Kategori: Oracle PL/SQL

Oracle ve PL/SQL ile ilgili örnekler

Linux Mint üzerine Oracle XE 11G ve SQL Developer Kurulumu

Linux Mint üzerine Oracle XE 11G ve SQL Developer Kurulumu

Oracle Database Express Edition 11g Kurulumu

LINUX MINT – UBUNTU tabanlı sistemlerde kurulumu yapabilirsiniz.

Merhaba öncelikle Oracle 11G veya son sürümünü kendi sitesinden indirelim.Linux 64 bit versiyonunu seçelim RPM olarak indirelim.
http://www.oracle.com/technetwork/database/database-technologies/express-edition/downloads/index.html

Komutları sırasıyla uygulayalım ben ekran görüntülerinide koydum.
Öncelikle alien aracını indirelim (RPM uzantılı dosyayı DEB yaparak yükleme yapacağız)

 $ sudo apt-get install alien libaio1 unixodbc
 $ cd İndirilenler (Benim indirdiğim klasör "İndirilenler")
 $ unzip oracle-xe-11.2.0-1.0.x86_64.rpm.zip (previously downloaded)
 $ cd Disk1
 $ sudo alien --scripts -d oracle-xe-11.2.0-1.0.x86_64.rpm
 $ sudo gedit /sbin/chkconfig

Ekran Görüntüsü - 2015-08-20 21_30_36
İndirdiğimiz klasöre gidelim bende /İndirilenler Bu komut 4 – 5 dk bekleyebilir işlemci hızına göre Terminali kapatmayın 😀
Ekran Görüntüsü - 2015-08-20 21_38_40Açılan /sbin/chkconfig dizinindeki dosyamıza aşağıdaki ayar kodlarını girelim ve kaydet diyelim.

#!/bin/bash
 # Oracle 11gR2 XE installer chkconfig hack for Ubuntu
 file=/etc/init.d/oracle-xe
 if [[ ! 'tail -n1 $file | grep INIT' ]]; then
 echo >> $file
 echo '### BEGIN INIT INFO' >> $file
 echo '# Provides: OracleXE' >> $file
 echo '# Required-Start: $remote_fs $syslog' >> $file
 echo '# Required-Stop: $remote_fs $syslog' >> $file
 echo '# Default-Start: 2 3 4 5' >> $file
 echo '# Default-Stop: 0 1 6' >> $file
 echo '# Short-Description: Oracle 11g Express Edition' >> $file
 echo '### END INIT INFO' >> $file
 fi
 update-rc.d oracle-xe defaults 80 01
 ‪#‎EOF

 

Ekran Görüntüsü - 2015-08-20 21_39_4260-oracle.conf dosyamızın içine ayar kodlarımızı girelim

 $ sudo chmod 755 /sbin/chkconfig
 $ sudo gedit /etc/sysctl.d/60-oracle.conf

Ayar Komutları ekleyip Kaydet diyelim.

# Oracle 11g XE kernel parameters
 fs.file-max=6815744
 net.ipv4.ip_local_port_range=9000 65000
 kernel.sem=250 32000 100 128
 kernel.shmmax=536870912

Ekran Görüntüsü - 2015-08-20 21_40_30

Komutları sırasıyla girelim.Bende olan birşeyi söyleyim Google Chrome ile okuyorsanız şuan bu yazıyı komutları girerken kapanıyor Mozilla kapanmadı.Haber vereyim dedim 😀
Aşağıdaki yükleme yerinde indirdiğiniz .DEB .ZİP dosyalarının isimlerini yazın resimlere dikkat edelim.

$ sudo cat /etc/sysctl.d/60-oracle.conf
 $ sudo service procps start
 $ sudo ln -s /usr/bin/awk /bin/awk
 $ mkdir /var/lock/subsys
 $ touch /var/lock/subsys/listener
 $ sudo dpkg --install oracle-xe_11.2.0-2_amd64.deb
 $ sudo rm -rf /dev/shm
 $ sudo mkdir /dev/shm
 $ sudo mount -t tmpfs shmfs -o size=2048m /dev/shm
 $ sudo gedit /etc/rc2.d/S01shm_load

Ekran Görüntüsü - 2015-08-20 21_41_03

Ekran Görüntüsü - 2015-08-20 21_42_00

Ekran Görüntüsü - 2015-08-20 21_42_48

Ekran Görüntüsü - 2015-08-20 21_43_30Ustteki komutları sırasıyla girdim hepsi resimlerde olmayabilir sırayla uygulayın.Son komutta S01shm_load dosyamıza ayarlarımızı ekleyelim.Kaydet diyelim.

#!/bin/sh
 case "$1" in
 start) mkdir /var/lock/subsys 2>/dev/null
 touch /var/lock/subsys/listener
 rm /dev/shm 2>/dev/null
 mkdir /dev/shm 2>/dev/null
 mount -t tmpfs shmfs -o size=2048m /dev/shm ;;
 *) echo error
 exit 1 ;;
 esac

Ekran Görüntüsü - 2015-08-20 22_48_02
bash.bashrc dosyamıza ayarlarımızı girelim.

 $ sudo chmod 755 /etc/rc2.d/S01shm_load
 $ sudo gedit /etc/bash.bashrc

Ayarlarımızı girip Kaydet diyelim.

 export ORACLE_HOME=/u01/app/oracle/product/11.2.0/xe
 export ORACLE_SID=XE
 export NLS_LANG=`$ORACLE_HOME/bin/nls_lang.sh`
 export ORACLE_BASE=/u01/app/oracle
 export LD_LIBRARY_PATH=$ORACLE_HOME/lib:$LD_LIBRARY_PATH
 export PATH=$ORACLE_HOME/bin:$PATH

Ekran Görüntüsü - 2015-08-20 22_49_09Son komutlarımızıda girelim ve Oracle Configure ederek kurulumu tamamlayalım.

 $ source /etc/bash.bashrc
 $ cd ..
 $ sudo /etc/init.d/oracle-xe configure

8080 portu standarttır değiştirmek isterseniz port numarası girin standart kalsın isterseniz ENTERa basıp devam edelim.1521 portunuda ben değiştirmedim devam edip SYS AS SYSDBA yani admin şifrenizi istiyor şifremizi girelim ve devam edelim.Gelen soruda Y secerek kurulumu tamamlayalım.

Ekran Görüntüsü - 2015-08-20 22_50_38

Ekran Görüntüsü - 2015-08-20 22_51_25

Terminalden sqlplus komutu ile LOGİN yapalım.
Giriş için kullanıcı adı SYS AS SYSDBA
ŞİFRE Kurulum esnasında girdiğimiz şifre olarak girelim.

HR
şemasını ben açtım siz isterseniz yeni kullanıcı oluşturabilirsiniz.
Oracleda HR şemasını açmak için aşağıdaki komutu girelim. Ben şifre olarak hr dedim siz isterseniz identified by (ŞİFRE BURAYA) şeklinde seçebilirsiniz.

alter user hr account unlock identified by hr;

Ekran Görüntüsü - 2015-08-21 00:29:03

SQL DEVELOPER KURULUMU

Öncelikle SQL Developer son sürümünü sitesinden indirelim. Linux RPM versiyonunu.
http://www.oracle.com/technetwork/developer-tools/sql-developer/downloads/index.html

Terminalden indirdiğimiz sqldeveloper rpm dosyamızın olduğu dizine gidelim.Ve komutlarımızı girelim.Buradada indirdiğiniz dosyaların isimlerini yazmayı unutmayın.

 $ sudo alien --scripts -d sqldeveloper-4.0.0.13.80-1.noarch.rpm (İNDİRDİĞİNİZ DOSYAYI SECİN)
 $ sudo dpkg --install sqldeveloper_4.0.0.13.80-2_all.deb
 $ sudo mkdir /home/.sqldeveloper/
 $ sudo /opt/sqldeveloper/sqldeveloper.sh(İlk olarak java adresini istiyor)
 /usr/lib/jvm/java-7-oracle (Hangi java versiyonunuzu seçecekseniz adresini buraya yazın)

Ekran Görüntüsü - 2015-08-21 00:40:15 Ekran Görüntüsü - 2015-08-21 00:40:45

SQL Developer kuruldu fakan ilk açılışta beyaz ekran sorunu,görüntü bozuklukları,menülerin kaybolması gibi ekran sorunları oluyorsa Menüden Tools / Preferences / Look and Feel kısmından ORACLE yazan menüyü METAL olarak seçelim.Bu menüye gelmek için göremeyebilirsiniz mouse ile hareket ettirin menüler beliriyor.

Ekran Görüntüsü - 2015-08-21 00:42:22

SQL Developer sorunsuz açıldı.Soldaki yeşil ARTI ile new connection oluşturalım. Ben yukarıda açtığım HR şemasını açtım.Username ve Password hr / hr şeklinde giriş yaptım. BU KADAR. 🙂 Kolay gelsin arkadaşlar !

Ekran Görüntüsü - 2015-08-21 00:39:23

PL/SQL WHILE LOOP Kullanımı (While Döngüsü)

PL/SQL WHILE LOOP Kullanımı (While Döngüsü)

Oracle PLSQL ile while kullanımı aşağıdaki gibidir.

DECLARE
 --Değişkenler
 BEGIN
 WHILE Koşul
 LOOP
 --yapılacak iş
 END LOOP;
 END;

PLSQL While Dongusu

 

DECLARE
 sayi NUMBER := 1;
 BEGIN
 WHILE sayi<10
 LOOP
 DBMS_OUTPUT.PUT_LINE('Sayı = ' || sayi);
 sayi := sayi + 1;
 END LOOP;
 END;

Bir başka örnekde TRUE FALSE ile yapalım

 DECLARE
 deger BOOLEAN := FALSE;
 BEGIN
 WHILE deger LOOP
 DBMS_OUTPUT.PUT_LINE ('BU SATIR YAZILMAYACAK');
 deger := TRUE; 
 END LOOP;
WHILE NOT deger LOOP
 DBMS_OUTPUT.PUT_LINE ('Merhaba Dünya');
 deger := TRUE;
 END LOOP;
 END;
___________________________________________
EKRAN ÇIKTISI : Merhaba Dünya

Yukarıdaki kod bloğunda ilk While döngüsüne girmedi çünkü koşul uyumlu değildi.While komutu koşulunda true standarttır koşula false değer geldiği için döngümüz çalışmadı.İkinci While döngümüzde While NOT deger satırındaki NOT ile false değerinin tersini aldı yani deger değişkeni FALSE durumdaydı FALSE değişkenin NOT FALSE olarak TRUE oldu ve döngü çalıştı.Kısaca While LOOP bu kadar arkadaşlar kolay gelsin. 🙂

Oracle PLSQL

Oracle PLSQL

Oracle İmages

PLSQL NEDİR ?

PL/SQL yapısal dillere ait özelliklerin SQL’e eklenmesiyle ortaya çıkan Oracle’a has bir dildir. İstemci sunucu ortamları tasarlama ile ağ üzerindeki dağıtık işlemler yapma ve transactionlar çalıştırma imkanı sunmaktadır.PL/SQL kullanarak her türlü SQL cümleciğini yazabilirsiniz. Dinamik SQL ifadeleri oluşturup, çalıştırabilirsiniz.

Read More Read More