it-swarm-tr.com

Tüm düğümleri sildikten sonra, düğüm kimliğini tekrar 1'den başlayacak şekilde nasıl sıfırlarım?

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?

16
gilzero

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, bu gerçekten sitenize bağlıdır, sıralar tablosu da dahil olmak üzere bir nid olan 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şlama.

12
Luis
ALTER TABLE `node` AUTO_INCREMENT = 1;

Not - Bu soruyu yanıtlayan diğer kullanıcılar: İç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 (örneğin. 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 hale gelir./code tradeoff her zaman oradadır.

16
Dipen

SQL Sorgusu: ALTER TABLE 'node' AUTO_INCREMENT=1;

Bunu yapmadan önce tüm düğümleri sildiğinizden emin olun.

2
beeleg

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

buraya bakın

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;
2
schneidolf

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
0
shahab