it-swarm-id.com

Setelah menghapus semua node, bagaimana cara mereset ID node untuk memulai dari 1 lagi?

Saya menghasilkan banyak konten dummy untuk pengujian, dan kemudian menghapus semuanya. Karena nid adalah penambahan otomatis, simpul yang baru dibuat akan memiliki nid +1 yang dibuat terakhir.

Bagaimana saya bisa membuat nid mulai dari 1 lagi?

16
gilzero

Jika tidak memotong tabel simpul begitu saja, ada beberapa tabel lain yang terhubung ke tabel simpul, seperti simpul_revisi, urutan, tabel bidang, tabel taksonomi, dan banyak lagi.

Tidak ada cara aman untuk melakukan ini, itu benar-benar tergantung pada situs Anda, Anda harus memotong dan menyesuaikan semua tabel yang memiliki nid termasuk tabel urutan. Ingat, sangat mungkin situs Anda menjadi tidak dapat digunakan, jadi jangan mulai tanpa cadangan terlebih dahulu.

12
Luis
ALTER TABLE `node` AUTO_INCREMENT = 1;

P. - Orang lain yang telah menjawab pertanyaan ini: Saya baru saja melakukan pemeriksaan kecil setelah menghapus konten dan konten yang terkait memang dihapus, tabel node_revisions dan field_ * kosong. node_delete mengatakan hal yang sama - http://api.drupal.org/api/drupal/modules--node--node.module/function/node_delete_multiple/7

Terkadang pada proyek migrasi ketika Anda bermigrasi dari platform lain (mis. ASP + MSSQL), terkadang menjadi tidak terhindarkan untuk mengatur ulang nid karena banyak faktor. Saya yakin itu bisa dihindari tetapi waktu/kode tradeoff selalu ada.

16
Dipen

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

Pastikan Anda telah menghapus semua node sebelum melakukan ini.

2
beeleg

Anda dapat menggunakan modul Hapus semua dengan perintah drush berikut:

Drupal 7

Hapus semua jenis node, dan setel ulang simpul, revisi, dan komentar counter.

drush delete-all --reset

Drupal 8

lihat di sini

Menghapus semua konten dari semua jenis.

drush delete-all-delete-content

Lalu:

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

anda dapat memotong tabel simpul tetapi, perhatikan Anda harus memotong tabel bidang relasional, jika Anda hanya ingin memulai kenaikan id dari 1 Anda dapat menggunakan

ALTER TABLE  `node` AUTO_INCREMENT=1
0
shahab