SORU
11 NİSAN 2009, CUMARTESİ


MySQL:/Sıfırlama otomatik artan birincil anahtar Yeniden düzenlemek?

Otomatik artan birincil anahtarları ile MySQL bir tablo var... masanın ortasında bazı satırları sildim. Şimdi, örneğin, KİMLİĞİ sütununda şöyle bir şey var: 12, 13, 14, 19, 20... silinen 15, 16, 18 ve 19 satır.... Reset/süreklilik var ve bu yüzden birincil anahtarları yeniden düzenlemek/reassing... 19 15, 20, 16 ve ekmek istiyorum....

Bunu nasıl yapabilirim??? Teşekkürler.

CEVAP
25 Mart 2011, Cuma


Bu soru oldukça eski gibi görünüyor olsa da, burada aramaya kalkışan birisi için bir cevap yayınlayacağız.

SET @count = 0;
UPDATE `users` SET `users`.`id` = @count:= @count   1;

Eğer sütun diğer tablolardaki yabancı anahtar olarak kullanılıyorsa, bu tablolar ON UPDATE NO ACTION yabancı anahtar için varsayılan ilişki yerine ON UPDATE CASCADE kullandığınızdan emin olun.

AUTO_INCREMENT sayacını sıfırlamak için ek olarak, hemen şu sözleri beyan edebilirsiniz.

ALTER TABLE `users` AUTO_INCREMENT = 1;

MySQLs MAX(id) 1 değerini sıfırlar.

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • Epic Tutorials for iPhone, iPad and iOS

    Epic Tutoria

    18 EYLÜL 2011
  • hidetake takayama

    hidetake tak

    3 Mart 2009
  • Warner Bros. UK

    Warner Bros.

    6 HAZİRAN 2008