Skocz do zawartości
"Idzie nowe..." - o zmianach i nie tylko ×
Przeniesienie zakupów z IPS Marketplace / Moving bought items from IPS Marketplace ×

Rekomendowane odpowiedzi

Opublikowano

Witam,

Tak więc mam 11996 użytkowników, lecz ostatniego zarejestrowanego użytkownika to 12035. Jak możecie zauważyć - brakuje 39. Jak mogę ich dodać, bez sknocenia ID? Przeszukiwać po kolei całą kolumnę members i dodać ich w bazie, a potem przebudować? :P Jest jakiś prostszy sposób?

// KliczeK

In, and Out.

  • Manager
Opublikowano

Jednym słowem: absolutnie tego NIE ruszać. ID zmieniają się na podstawie własności auto increment w tabelach - tak, liczba mnoga, jest zbyt dużo zależności by to ot tak sobie zmienić.

Jeśli nie chcesz sobie robić problemów to nie ruszaj tego.

Różnica może wynikać np. z kasowania użytkowników itp.

intermedia - profesjonalne rozwiązania Invision Power Board

---

Chcesz uzyskać szybko i sprawnie pomoc? Uzupełnij wersję i adres w profilu.

Opublikowano
Różnica może wynikać np. z kasowania użytkowników itp.

Tak, wiem. Jednak chce to ruszać, żeby to naprawić. Chcę aby było USER = ID. Zrobię backup i pobawię się tym, no ale rozumiem że nie ma innego sposobu?

In, and Out.

  • Manager
Opublikowano

Tzn. nie wiem co chcesz zrobić. Jeśli zmienić userom ID to użyj tej modyfikacji: Change Member ID 2.2, a potem koniecznie zmień wartości auto increment dla tabel, które są 'ruszane' przez modyfikację podaną wcześniej, czyli te które ja widzę, to:

CODE-BOX

$this->ipsclass->DB->do_update( 'admin_logs', array( 'member_id' => $new_mid ), "member_id=".$old_mid );

$this->ipsclass->DB->do_update( 'admin_sessions', array( 'session_member_id' => $new_mid ), "session_member_id=".$old_mid );

$this->ipsclass->DB->do_update( 'announcements', array( 'announce_member_id' => $new_mid ), "announce_member_id=".$old_mid );

$this->ipsclass->DB->do_update( 'attachments', array( 'attach_member_id' => $new_mid ), "attach_member_id=".$old_mid );

$this->ipsclass->DB->do_update( 'cal_events', array( 'event_member_id' => $new_mid ), "event_member_id=".$old_mid );

$this->ipsclass->DB->do_update( 'contacts', array( 'contact_id' => $new_mid ), "contact_id=".$old_mid );

$this->ipsclass->DB->do_update( 'contacts', array( 'member_id' => $new_mid ), "member_id=".$old_mid );

$this->ipsclass->DB->do_update( 'email_logs', array( 'from_member_id' => $new_mid ), "from_member_id=".$old_mid );

$this->ipsclass->DB->do_update( 'email_logs', array( 'to_member_id' => $new_mid ), "to_member_id=".$old_mid );

$this->ipsclass->DB->do_update( 'forum_tracker', array( 'member_id' => $new_mid ), "member_id=".$old_mid );

$this->ipsclass->DB->do_update( 'forums', array( 'last_poster_id' => $new_mid ), "last_poster_id=".$old_mid );

$this->ipsclass->DB->do_update( 'member_extra', array( 'id' => $new_mid ), "id=".$old_mid );

$this->ipsclass->DB->do_update( 'members', array( 'id' => $new_mid ), "id=".$old_mid );

$this->ipsclass->DB->do_update( 'members_converge', array( 'converge_id' => $new_mid ), "converge_id=".$old_mid );

$this->ipsclass->DB->do_update( 'message_text', array( 'msg_author_id' => $new_mid ), "msg_author_id=".$old_mid );

$this->ipsclass->DB->do_update( 'message_topics', array( 'mt_from_id' => $new_mid ), "mt_from_id=".$old_mid );

$this->ipsclass->DB->do_update( 'message_topics', array( 'mt_to_id' => $new_mid ), "mt_to_id=".$old_mid );

$this->ipsclass->DB->do_update( 'message_topics', array( 'mt_owner_id' => $new_mid ), "mt_owner_id=".$old_mid );

$this->ipsclass->DB->do_update( 'moderator_logs', array( 'member_id' => $new_mid ), "member_id=".$old_mid );

$this->ipsclass->DB->do_update( 'moderator_logs', array( 'member_id' => $new_mid ), "member_id=".$old_mid );

$this->ipsclass->DB->do_update( 'moderators', array( 'member_id' => $new_mid ), "member_id=".$old_mid );

$this->ipsclass->DB->do_update( 'pfields_content', array( 'member_id' => $new_mid ), "member_id=".$old_mid );

$this->ipsclass->DB->do_update( 'polls', array( 'starter_id' => $new_mid ), "starter_id=".$old_mid );

$this->ipsclass->DB->do_update( 'posts', array( 'author_id' => $new_mid ), "author_id=".$old_mid );

$this->ipsclass->DB->do_update( 'search_results', array( 'member_id' => $new_mid ), "member_id=".$old_mid );

$this->ipsclass->DB->do_update( 'sessions', array( 'member_id' => $new_mid ), "member_id=".$old_mid );

$this->ipsclass->DB->do_update( 'topics', array( 'starter_id' => $new_mid ), "starter_id=".$old_mid );

$this->ipsclass->DB->do_update( 'topics', array( 'last_poster_id' => $new_mid ), "last_poster_id=".$old_mid );

$this->ipsclass->DB->do_update( 'topics_read', array( 'read_mid' => $new_mid ), "read_mid=".$old_mid );

$this->ipsclass->DB->do_update( 'tracker', array( 'member_id' => $new_mid ), "member_id=".$old_mid );

$this->ipsclass->DB->do_update( 'validating', array( 'member_id' => $new_mid ), "member_id=".$old_mid );

$this->ipsclass->DB->do_update( 'voters', array( 'member_id' => $new_mid ), "member_id=".$old_mid );

$this->ipsclass->DB->do_update( 'warn_logs', array( 'wlog_mid' => $new_mid ), "wlog_mid=".$old_mid );

// These tables won't exist if you don't have the subs manager. Better check first.

if (is_dir( ROOT_PATH.'modules/subsmanager' ) )

{

$this->ipsclass->DB->do_update( 'subscription_logs', array( 'sublog_member_id' => $new_mid ), "sublog_member_id=".$old_mid );

$this->ipsclass->DB->do_update( 'subscription_trans', array( 'subtrans_member_id' => $new_mid ), "subtrans_member_id=".$old_mid );

intermedia - profesjonalne rozwiązania Invision Power Board

---

Chcesz uzyskać szybko i sprawnie pomoc? Uzupełnij wersję i adres w profilu.

Opublikowano

Nie, nie chce zmieniać nikomu ID. Bardziej myślałem nad taką procedurą:

Zerkam że w bazie nie ma nikogo o ID 24. Tak więc dodaje wpis w bazie z nowym użytkownikiem, który będzie miał ID 24. Tylko przeglądać całą bazę 12 tysięcy userów trochę zajmie. :P

In, and Out.

Opublikowano
Nie dodasz sobie tego ot tak. Moja procedura z wyżej daje na pewno lepsze efekty od Twojej. :P

Czyli jeżeli zarejestruje nowego użytkownika, zmienie mu ID na niższe i zrobie powyższe zapytania SQL, to następny użytkownik który się zarejestruje będzie miał ID takie jak użytkownik którego ja zarejestrowałem na samym początku, przed zmianą - tak?

In, and Out.

  • Manager
Opublikowano
Czyli jeżeli zarejestruje nowego użytkownika, zmienie mu ID na niższe i zrobie powyższe zapytania SQL, to następny użytkownik który się zarejestruje będzie miał ID takie jak użytkownik którego ja zarejestrowałem na samym początku, przed zmianą - tak?

Jeśli pozmieniasz auto icrementy w tabelach to powinien tak dostać. Ale naprawdę nie zalecam tego typu działań. To gra nie warta efektu.

intermedia - profesjonalne rozwiązania Invision Power Board

---

Chcesz uzyskać szybko i sprawnie pomoc? Uzupełnij wersję i adres w profilu.

Jeśli chcesz dodać odpowiedź, zaloguj się lub zarejestruj nowe konto

Jedynie zarejestrowani użytkownicy mogą komentować zawartość tej strony.

Zarejestruj nowe konto

Załóż nowe konto. To bardzo proste!

Zarejestruj się

Zaloguj się

Posiadasz już konto? Zaloguj się poniżej.

Zaloguj się
  • Ostatnio przeglądający   0 użytkowników

    • Brak zarejestrowanych użytkowników przeglądających tę stronę.
×
×
  • Dodaj nową pozycję...

Powiadomienie o plikach cookie

Umieściliśmy na Twoim urządzeniu pliki cookie, aby pomóc Ci usprawnić przeglądanie strony. Możesz dostosować ustawienia plików cookie, w przeciwnym wypadku zakładamy, że wyrażasz na to zgodę.