Test için tonlarca sahte içerik oluşturdum ve hepsini sildim. Nid otomatik olarak arttığından, yeni oluşturulan düğümün son oluşturulan nid +1 nid değeri olacaktır.
Nid'i tekrar 1'den nasıl başlatabilirim?
Test için tonlarca sahte içerik oluşturdum ve hepsini sildim. Nid otomatik olarak arttığından, yeni oluşturulan düğümün son oluşturulan nid +1 nid değeri olacaktır.
Nid'i tekrar 1'den nasıl başlatabilirim?
Yanıtlar:
Plase, düğüm tablosunu bu şekilde kesmez, düğüm tablosuna bağlı olan node_revisions, sekanslar, alan tabloları, sınıflandırma tabloları ve daha pek çok başka tablo vardır.
Bunu yapmanın güvenli bir yolu yoktur, gerçekten sitenize bağlıdır, sıralar tablosu da dahil olmak üzere bir nid içeren tüm tabloları kısaltmanız ve ayarlamanız gerekir. Unutmayın, sitenizin kullanılamaz hale gelme olasılığı yüksektir, bu yüzden önce yedek olmadan başlamayın.
ALTER TABLE `node` AUTO_INCREMENT = 1;
Not - Bu soruya cevap veren diğerleri: İçeriği sildikten sonra küçük bir kontrol yaptım ve ilişkili içerik gerçekten silindi, node_revisions ve field_ * tabloları boş. node_delete aynısını söylüyor - http://api.drupal.org/api/drupal/modules--node--node.module/function/node_delete_multiple/7
Bazen diğer platformlardan (ör. ASP + MSSQL) geçiş yaptığınızda taşıma projelerinde, bazen çok sayıda faktör nedeniyle nid'i sıfırlamak kaçınılmaz olur. Önlenebilir eminim ama zaman / kod tradeoff her zaman orada.
Tümünü sil modülünü aşağıdaki drush komutlarıyla kullanabilirsiniz:
Drupal 7
Her türden düğümü silin ve düğüm, revizyon ve yorum sayaçlarını sıfırlayın.
drush delete-all --reset
Drupal 8
Her türden tüm içeriği siler.
drush delete-all-delete-content
Ve sonra:
ALTER TABLE `node` AUTO_INCREMENT=1;
ALTER TABLE `node_revision` AUTO_INCREMENT=1;
ALTER TABLE `node_field_data` AUTO_INCREMENT=1;
ALTER TABLE `node_field_revision` AUTO_INCREMENT=1;
düğüm tablosunu kesebilirsiniz, ancak ilişkisel alan tablosunu kesmeniz gerekir, eğer sadece kullanabileceğiniz 1'den artış kimliğini başlatmak istiyorsanız
ALTER TABLE `node` AUTO_INCREMENT=1