php myAdmin mysql <? ?>

BROWSER-BASED * PHP5 SUPPORT * MYSQL 4.1 AND MYSQL 5.0 SUPPORT * OPEN SOURCE
PHP ve MySQL - En Yararlı Türkçe Kaynak
Kullanıcı Adınız : Kullanıcı Parolanız : Hatırla :    Kayıt   Şifremi Unuttum
Forum Ana Sayfa | Konu
Cevap Yaz
1
23:10 26.09.2008

Yazar :
leventersoy
Seviye:

mysql_affected_rows() fonksiyonu mantığı ve fonksiyonun kullanımı

mysql_affected_rows
            (PHP 4, PHP 5, PECL mysql:1.0)
mysql_affected_rows &#8212; Bir önceki elemanı etkileyen satır sayısını verir.

Parametreler

    link_identifier
        MySQL bağlantısı. Bağlantı tanımlayıcısı (link_identifier) belirtilmemişse
mysql_connect() tarafından açılmış son bağlantı geçerli kabul edilir. Eğer böyle bir
bağlantı bulunamazsa, mysql_connect() fonksiyonu hiçbir parametre verilmeden çalıştırılır.
Eğer bu da başarısız olursa, E_WARNING seviyesinde bir uyarı meydana gelir.

Dönüş Değerleri (Return Values)
Girilen id numarası ile etki edilecek satırlar belirlenir ve sorgu çalıştırılır, eğer ki
sorgu başarız olursa dönüşler -1 olarak değer alır.

Eğer son sorgu DELETE ise ve WHERE yoksa butun kayitlar tablodan silinir. Fakat bu
fonksiyon 0 olur , eğer MySQL versiyonu 4.1.2 den onceyse

Update kullanıldığında ise , eğer yeni değer ile eski değer aynı ise MySQL kolonları
güncellenmez, böylelikle ekran çıktısı olarak gösterilen değer sadece güncellenen satırlar
için geçerli bir ifadedir.

değiştirme işlemlerinde önce aynı primary key değerinde olan kayıtları siler ve yerine
yenisini koyar. Bu fonksiyonda silinen kayıtları artı ve de yeni yerleştirilmiş kayıtları
gösterir.

Örnekler

Örnek#1 mysql_affected_rows() örneği;

<?php
$link 
mysql_connect('localhost''mysql_kullaniciadi''mysql_sifre');
if (!
$link) {
    die(
'Bağlantı sağlanamadı: ' mysql_error());
}
mysql_select_db('veritabanim');

/* belirtilen ihtimal dahilinde numara aranır ve belirlenen id numarasının altındaki id
içeriği silinir */
mysql_query('DELETE FROM tablom WHERE id < 10');
printf("silinen kayitlar: %d\n"mysql_affected_rows());

/* with a where clause that is never true, it should return 0 */
mysql_query('DELETE FROM tablom WHERE 0');
printf("silinen kayitlar: %d\n"mysql_affected_rows());
?>

Yukarıdaki örnek şuna benzer bir çıktı üretecektir:

silinen kayıtlar: 10
silinen kayıtlar: 0


    


Örnek#2 mysql_affected_rows() örnek iş yaptırma;
<?php
$link 
mysql_connect('localhost''mysql_kullaniciadi''mysql_sifre');
if (!
$link) {
    die(
'Bağlantı sağlanmadı: ' mysql_error());
}
mysql_select_db('veritabanim');

/* Update records */
mysql_query("UPDATE tablom SET used=1 WHERE id < 10");
printf ("guncellenen kayıt sayısı: %d\n"mysql_affected_rows());
mysql_query("COMMIT");
?>

yukarıda çıktı şuna benzer olacaktır.

guncellenen kayıt sayısı : 5
   

Toplam Online : 4 Toplam Üye : 211 Bugün Gelen : 87 Toplam Gelen : 96527
 
 Son 10 dak. içinde online olan üyelerimiz :
php mysql php oracle ajax apache xml cozumleri w3c xhtml w3c css JavaScript Object Notation