php ile oracle veritabanı bağlantısı

Oracle Tartışmasız En iyi Veritabanı yazılımı.Rakiplerinin ilerleyişini iyi takip edip fiyatı artmadan satın alan bir yazılım akıllı adamlar gerek fonksiyonları gerekse hızı olarak anlatılamicak kadar çok işlevi var. en basitinden karmaşık sorglarda mysqldeki EXPLAIN işleminde gördüğünüz up uzun yolu o daha pratik işlyebilio mesela. vs vs..

Oracle’a herhangi bişey ile bağlanmak istediğimizde mutlaka aracı olan bir Client programı lazım..

Aşağıdaki Adresten Size Uygun Olanını ufak bir uyelikle temin edebilirsiniz.
http://www.oracle.com/technology/sof…sql/index.html

clientimiz de varsa.

php.ini dosyamızdan

;extension=oci8.dll
;extension=oci.dll

satırlarının başındaki ” ; ” kaldırıp. phpyi çalıştıran servisimizi yeniden başlatıyoruz..

Artıkk php ile oraclea bağlanabiliriz..

şimdi gelelim ufak oracle işlemlerine.. php ile herhangi bir veritabanı bağlantısı yapmışsanız bunda hiç zorlanmicaksınz.

veritabanı kullanıcı adı sunucu adresi ve şifresi gibii işlemlerde diğer sqllerden farkı Veritabanıın aynı zamanda sunucuda bir kullanıcı gibi görünmesi ki kullanıcı oluyo sanırım

PHP- Kodu:
< ?php define('DB_KULLANICI','kullanici_sifresi'); define('DB_SIFRE','kullanici_sifresi'); define('OCIHOST','(DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=192.168 .1.1)(PORT=1521))(CONNECT_DATA=(SID=orcl)))'); ?>

böyle bir ayar dosyamız olsun. şimdi bunu açıklayalım..

kullanıcı adı ve şifre dışında alışılmadık bir düzende veritabanı tanımlanmış.

veritabanının açıklmasında Sunucu adresi Portu .. SID de bahsettiğim sunucudaki eşsiz kullanıcı ve Veritabanı adı oluyor sanırım.

işin doğrusu SID – SERVICE_NAME – TNS gibi terimlerini kullansam da tam olarak mantığını anlamış değilim..

neyse..

PHP- Kodu:

< ?php define('DB_KULLANICI','kullanici_sifresi'); define('DB_SIFRE','kullanici_sifresi'); define('OCIHOST','//127.0.0.1:1521/orcl'); ?>

gibi de tanımlanabilir Veritabanı

bir kaç fonksiyon grubu ve sınıf mevcut phpde oraclea bağlanmak için.

oci_ fonksiyonlarını kullanarak anlatıcam..

oci_connect(); -> Bağlantı oluşturan fonksiyondur default session time outu ben bulamadım ama mysql bağlantısında bikaç dakikalık zamanı php belirlemişse bu da aynıdır sanıyoru.. oc_pconnect(); daha kısa süreli bir session oluşturarak bağlanan fonksiyondur.

bağlantıya bir isim veriyoruz ornek

< ? $baglanti=oci_connect(KULLANICI_ADI,SIFRE,OCIHOST) ; ?>

yazdığımız sql i direk sorgu olarak gonderemiyoruz oraclea. önce oci_parse(); Fonksiyonundan Geçirip onu Oraclea Gonderilmeye Musait hale getiriorz.. Tehlikeli Sorgular daha işin başında patlak verio yani.

parse işleminden sonra çıktı olarka aldığımız değer $sql olsun..

Oci_Execute($sql); Fonksiyonundan Geçiriyoruz. query işlemi elimizde oluyor.

eğer buna bir isim vermemişsek yine $sql olarak elimizde oluyor artık bu bir Datasource.
tipi de Oracle result.. mysql_query(); den dönen sonuç gibi satırlı sütunlu bir depo..

ve artık ayrıştırma işlemne geldik o da klasik OCI_Fetch_Assoc (=

şimdi tek dosyada toplayalım

PHP- Kodu:

< ?php define('DB_KULLANICI','kullanici_sifresi'); define('DB_SIFRE','kullanici_sifresi'); define('OCIHOST','//127.0.0.1:1521/orcl'); $baglanti=oci_connect(DB_KULLANICI,DB_SIFRE,OCIHOST); $sql=oci_parse("SELECT Adi||' '||Soyadi AS Ad_Soyad FROM uyeler WHERE Nick='DeLLy'"); $data_source=oci_execute($sql); $sonuc=oci_fetch_assoc($data_source); echo $sonuc[Ad_Soyad]; // Sonuç Olarak # # # Seyit Onbaşı Gibi Bir Çıktı Alırız (: # ?>

Related Posts Plugin for WordPress, Blogger...
PHP kategorisine gönderildi Etiketler:

Bir Cevap Yazın

Son Yazılar

doraglass