December, 2009 Arþivi

Mysql de triger yönetimi

Gonderen: Ersin tarih: Dec.06, 2009, Kategori: MySQL

MySQL de eklemiş olduğunuz trigerı görmek için:

1
2
3
 SELECT * FROM Information_Schema.Trigger
 WHERE Trigger_schema = 'veritabanı_ismi' AND
       Trigger_name = 'trigger_ismi';

Bir veritabanına elediğiniz tüm trigerları görmek için :

1
2
 SELECT * FROM Information_Schema.Trigger
 WHERE Trigger_schema = 'veritabanı_ismi'

Bir tabloya eklediğiniz trigerları görmek için :

1
2
3
SELECT * FROM Information_Schema.Trigger
 WHERE Trigger_schema = 'veritabanı_ismi' AND
       Event_object_table = 'tablo_ismi';

Son olarak da bir tabloya eklediğiniz trigerları da şu komut ile silebilirsiniz :

1
 DROP TRIGGER tablo_ismi.trigger_ismi
Yorum yap :, , , , , , , devami...

PHP de hata fırlatmak ( Exception kullanımı )

Gonderen: Ersin tarih: Dec.06, 2009, Kategori: Php Web Programlama

Php nin try-catch kullanımını anlatırken phpnin bu yapı için çok yeterli olmadığından bahsetmiştik. Hatanın yakalanabilmesi için bu hatayı fırlatabilen ( Exception ) bir mekanizma gereklidir. Bu da PHP5 ile gelen yeni özellilerde mevcut.
Tabi sadece PHP ekibine mecbur değilsiniz bu hata mekanizması için. Kendiniz de hata fırlatma mekanizması oluşturabilirsiniz.

Bu anlatım karmaşasını örnek ile sadeleştirelim :

1
2
3
4
$dosya=fopen('dosya','r');
$veri=fread($dosya,1024);
echo $veri;
fclose($dosya);

Örneğimiz çok basit, dosyayı açıp okuyor ve veriyi ekrana yazdırıyoruz. Bunu klasik hata yönetim sistemi ile değiştirelim.

1
2
3
4
5
6
7
if($dosya=fopen('dosya','r')){
    $veri=fread($dosya,1024);
    echo $veri;
    fclose($dosya)
}else {
   echo 'dosyayı açamadı';
}

Evet, gayet basit ve normal bir kullanım. Şimdi bunu nasıl try-catch uyumlu yapabileceğimizi göreceğiz, sonra buna neden gerek duyduğumuzu anlatmaya çalışacağım.

1
2
3
4
5
6
7
8
9
10
try {
  if(!$dosya=fopen('dosya','r')){
     throw new Exception('Dosya açılamadı');
  }
  $veri=fread($dosya,1024);
  echo $veri;
  fclose($dosya);
}catch(Exception $e){
   echo $e->getMessage();
}

Neden böyle birşeye ihtiyaç duyuyoruz . Bundan önce yukarıdaki kodu yorumlayalım :

Eğer dosya açılır ise okuduğumuz veriyi ekrana yazdırıyoruz. Eğer dosya açmada problem olursa hata fırlatma mekanizmasi ( throw ) ile hata fırlatıyoruz. Bundan sonrada catch bloğumuzda ( throw satırından sonraki satır çalışmaz ve burdan sonra catch bloğu çalışır ) hatayı yakalayarak yapmamız gerekeni yapıyoruz ( burada sadece hatayı ekrana yazdırıyoruz ).

Bu neden gerekli ? Öncelikle hatanın yönetilebilmesi daha kolay , kodun okunabilirliğini arttırır ve en önemlisi daha performanslı çalışır.
Yukarıdaki kodu örnek göstererek try-catch hata yakalama mekanizmasının avantajından dem vurmak mümkün değil tabiki. Bu mekanizmanın kullanımını kavradığınızda ve kullandığınızda daha net canlanacaktır zihninizde.

Yorum yap :, devami...

Birşey mi aradın ?

Sitede arama yapmak icin asagidaki formu kullanin:

Hala aradigini bulamadin mi ? Gönderiye bir yorum bırak, ya da benim ile iletişime geç, elimden geldiğince yardimci olurum!

Tavsiye olunur!

Tavsiye baglantilar