Ceviz Forum

Geri Dön   Ceviz Forum > Programlama > Veritabanları & SQL

Cevapla
 
LinkBack Seçenekler
Eski 25/10/2007, 19:34   #1 (permalink)
Orta Saha
 
Bozo Adlı Üyenin Profil Grafiği
 
Üyelik Tarihi: 06/2002
Yer: Mezapotomya
Mesaj: 524
Varsayılan delete ve limit kullanımı

DELETE FROM girisler WHERE kullanici='$id' order by id DESC limit 0,1

bu sql sorgusu çalışmıyor. hata da vermiyor. ancak order by ve limit kısmını sildiğimde sorgu çalışıyor. anlamadığım bu sorguda limit kullanamıyorum. benim yapmak istediğim kritere uyan satırları belli bir kısmını sildirmek.
__________________
Bu vatanın ekmeğini yeyip bu vatana ihanet edenler, birgün ekmeği yedikleri yerden kurşunu yerler...
Bozo hatta değil   Alıntı Yaparak Yanıtla
Eski 26/10/2007, 00:22   #2 (permalink)
Düşün düşün düşün
 
ercee Adlı Üyenin Profil Grafiği
 
Üyelik Tarihi: 04/2004
Yer: İstanbul
Mesaj: 295
Varsayılan

lımıt 1 olur sanırım
__________________
Ka. Er. Er.
http://www.turkdatabase.com
<? if (false) echo 'ups ... '; ?>
ercee hatta değil   Alıntı Yaparak Yanıtla
Eski 26/10/2007, 00:39   #3 (permalink)
. . :: pCuber :: . .
 
hasanyasin Adlı Üyenin Profil Grafiği
 
Üyelik Tarihi: 02/2007
Mesaj: 440
Varsayılan

where kullanici = $id dedikten sonra order by id demek anlamsız. Zaten dönen tabloda tüm id'ler aynı olacak... limit 0,1 kısmında sorun yok. Bu şekilde hiçbir şey silmiyorsa, kullanıcı değeri $id olan bir satır yok demektir...
__________________
tebessüm edebilmek sanattır...
hasanyasin hatta değil   Alıntı Yaparak Yanıtla
Eski 26/10/2007, 12:38   #4 (permalink)
Orta Saha
 
Bozo Adlı Üyenin Profil Grafiği
 
Üyelik Tarihi: 06/2002
Yer: Mezapotomya
Mesaj: 524
Varsayılan

Alıntı:
hasanyasin, mesajından alıntı: Mesajı Gör
where kullanici = $id dedikten sonra order by id demek anlamsız. Zaten dönen tabloda tüm id'ler aynı olacak... limit 0,1 kısmında sorun yok. Bu şekilde hiçbir şey silmiyorsa, kullanıcı değeri $id olan bir satır yok demektir...
kullandığım tablo yapısı şu;

id kullanici
1 4
2 4
3 4
4 6
5 4
6 4
7 2

ben burda kullanici alani $id olanların en yeni kaydı hariç diğer kayıtlarını silmek istiyorum

örneğin
DELETE FROM girisler WHERE kullanici='4' order by id DESC limit 1,-1
(girisler tablosunda kullanıcı alanı 4 olanları id ye göre listele ve gelen ilk kayıt (en yeni) hariç diğerlerinin hepsini sil)

limit 1,-1 şeklinde kullanım varmış, internette buldum açıklaması ile. ilk kayıt hariç geri kalanın hepsi anlamına geliyormuş

order by i kaldırsam bile çalışmıyor. limiti de kaldırınca çalışıyor ama tüm kayıtları siliyor.
__________________
Bu vatanın ekmeğini yeyip bu vatana ihanet edenler, birgün ekmeği yedikleri yerden kurşunu yerler...
Bozo hatta değil   Alıntı Yaparak Yanıtla
Eski 26/10/2007, 14:52   #5 (permalink)
Cevizci
 
arthon Adlı Üyenin Profil Grafiği
 
Üyelik Tarihi: 07/2006
Yer: İstanbul
Mesaj: 339
Varsayılan

şunu dene
DELETE FROM girisler WHERE kullanici = '4' AND id <> MAX(id)
arthon hatta değil   Alıntı Yaparak Yanıtla
Eski 26/10/2007, 18:02   #6 (permalink)
Cevizci
 
Üyelik Tarihi: 02/2003
Mesaj: 165
Varsayılan

limitli kulanımlarda en genel hali bu şekildedir herhalde.
DELETE FROM girisler WHERE id in (SELECT id FROM girisler WHERE kullanici='$id' order by id DESC limit 0,1)
bahtiyarsenoglu hatta değil   Alıntı Yaparak Yanıtla
Eski 26/10/2007, 19:04   #7 (permalink)
Eski Cevizci
 
zuzuu Adlı Üyenin Profil Grafiği
 
Üyelik Tarihi: 05/2005
Mesaj: 289
Varsayılan

delete işleminde limit kullanılabilir mi bilmiyorum ama sağlıklı olduğunu dşünmüyorum. Daha okunabilir olması acısından da her grupta max(id)'yi bulup o igrupda max idden farklı klayıtları silmek daha doğru olur.
zuzuu hatta değil   Alıntı Yaparak Yanıtla
Cevapla

Bookmarks

Seçenekler

Mesaj Yazma Hakları
Yeni mesajgöndermezsiniz
Cevap yazamazsınız
Dosya ekleyemezsiniz
Mesajınızı düzenleyemezsiniz

BB code is Açık
[IMG] kodu Açık
HTML kodu Kapalı
Trackbacks are Açık
Pingbacks are Açık
Refbacks are Açık

Benzer Konular
Konu Konuyu açana göre Forum Cevap En Son Mesaj
ftp delete ve mysql delete vurkun PHP 4 12/06/2007 13:16
Delete hakanozer Veritabanları & SQL 5 09/05/2007 11:56
Delete * From ALEXIS Veritabanları & SQL 4 21/06/2005 10:55
"SELECT * FROM izolasyon WHERE ur = '$urun' DESC limit $k,$limit" duckula Veritabanları & SQL 22 12/05/2005 17:55
Delete From LoS.ToF Veritabanları & SQL 1 19/06/2003 13:42


Forum saati Türkiye saatine göredir. GMT +3. Şu anda saat 06:36.

Reklamlar & Desteklenenler
Hassas Valf | Hassas Kaplama | Antalyamız | Gazete | Ticari Bilişim | Hakan Müştak | Rüya Tabirleri | Kadın | Hastalıklar | Cepte msn ve e-posta | Webmaster | Antalya Aupair | Turkish Property Antalya | Forum | Chat | Perde | Adsl | Araba | bolindir.com | guncelle.com | livescore | Web Tasarım | evden eve nakliyat | forum | evden eve | sohbet | Resimcim| Kalifiye İnsan Kaynakları | Web Tasarım | Oyun | Yusuf KOÇ | Akın Yorulmaz | şiir | UFO | Web Tasarım | Oyunlar | Canlı Tv |


Forum Yazılımı: vBulletin Copyright ©2000 - 2008, Jelsoft Enterprises Ltd.
Search Engine Friendly URLs by vBSEO 3.2.0
Copyright ©2001 - 2008, Ceviz.net