merhaba gençlik,
sitemde 1 milyon içerik var. bu içeriklerde id nosu 1,2,3,4,5,6,20,30,40,120 filan diye saçma olarak gidiyor nedeni aradaki veriler eskiden silinmiş durumda bundan sonra bu şekilde silinme olmayacak ama ben değerleri 1,2,3,4,5,6, hepsinin sıralı bir biçime almak istiyorum nedeni order by rand() komutu yerine limit $rand,10 gibisinden bir komut kullanacagım ve sqli performans katmak istiyorum. bu konuda şunları denedim. id tablosunu sildim ve tekrar id açtım dedim ki auto increment tanımlarsam bu iş olur ama veri varken bunu yapamadım..
hata bu : #1075 - Incorrect table definition; there can be only one auto column and it must be defined as a key
primary key tanımlamak istediğimdede bu hatayı alıyorum.
#1062 - Duplicate entry '0' for key 1
auto increment
2
●694
- 14-07-2009, 14:44:24Üyeliği durdurulduid alanını sildikten sonra tekrar oluştur.
dikkat edeceğin 3 şey var.
1. auto_increment
2. birincil index
3. integer yapman
şuanki sorunun büyük seebebi idyi silmene rağmen hala ona ait indexin var olması
o indexi sildikten sonra dene.
(myadminin altında (detials) diye bişi olmalı son sürümde oraya bakarsan görürsün ordaki idyi sil tekrar ekle)
Kolay Gelsin. - 14-07-2009, 16:48:57Üyeliği durduruldu- id sutununu komple sil yeniden oluştur
veya
- 2. bi tablo oluştur, boş,
insert into yenitablo (baslik,yazi) select baslik,yazi from eskitablo;
sql ini caliştir yeni tabloda idler sirali olusur.
ayrıca:
- 1 milyon kayit içinde text arama yaptiracaksan : Sphinx - Free open-source SQL full-text search engine araştir, tam 20 kat hiz farkı hissedeceksin.