Как изменить ID пользователя через SQL запрос - Дизайн и модификация Invision Power Board

Перейти к содержимому

 

Правила раздела

Здесь обсуждаются вопросы по настройке и администрированию форумов IPB 3.x.
Пожалуйста, не оффтопьте, если зашли сюда случайно, и обратите внимание на соседние разделы.
Установка, настройка и обслуживание форумов IPB 2.x.
Оформление форумов, включая верстку скинов.
Размещение рекламы на форумах.
SEO оптимизация форума.
Техническая поддержка наших скинов и модов.

СвернутьПрикрепленные теги

sql запросы

Страница 1 из 1

Как изменить ID пользователя через SQL запрос такое можно осуществить?

#1 Пользователь не на сайте   Qartvela™ ответил: »

 
 
  • Advanced
  • Смотреть блог
  • Insert nick to fast reply form
  • Quote selected text to fast reply form
  • Группа: IPB Specialist
  • Сообщений: 176
  • Регистрация: 15-Февраль 11
  • Репутация: 24
  • IPB version:3.1.x
 

Отправлено 30 Май 2011 - 19:35

Как можно изменить ID пользователя через SQL запрос без каких либо проблем?
Я хочу поменять мой ID на №1, но он занят другим пользователем.
Надо поменять сначала его ID, а потом мой... Такое можно осуществить?
0

#2 Пользователь не на сайте   Ph-A ответил: »

 
 
  • Advanced
  • Смотреть галерею
  • Insert nick to fast reply form
  • Quote selected text to fast reply form
  • Группа: IPB Skins Team
  • Сообщений: 5 567
  • Регистрация: 18-Сентябрь 06
  • Репутация: 392
  • Откуда:Moscow
  • IPB version:3.1.x
 

Отправлено 31 Май 2011 - 09:34

Просмотреть сообщениеQartvela™ сказал(а):

такое можно осуществить?

Можно, но .... Но таблиц где используется ID несколько. На память только на форуме это таблицы posts, topics, polls, message_posts, message_topics. И естественно members
Это не все, там еще логи, данные профайла, друзья, смена имени ... Надо писать запросы, кропотливо учитывая все таблицы.

Чисто теоретически.
Заводим нового пользователя с нужными данными для ID1. Вручную копируем пароль и кэш пароля в таблицу.
И сливаем его с ID1.
Он должен сохранить все данные и освободится первая запись.

Заводим еще одного пользователя. Меняем ему на ID1 в members. Для нового пользователя это может быть достаточно. А потом так же сливаем его с вашей старой записью.

Насколько это работает, не знаю. Не проверял.

Второй вариант, посмотреть процедуру сливание записей в АЦ. ИМХО, но все может оказаться очень просто и переделать будет не сложно.
0

#3 Пользователь не на сайте   siv1987 ответил: »

 
 
  • Advanced
  • Insert nick to fast reply form
  • Quote selected text to fast reply form
  • Группа: IPB Skins Team
  • Сообщений: 9 048
  • Регистрация: 20-Март 09
  • Репутация: 2 415
  • IPB version:3.1.x
 

Отправлено 17 Август 2016 - 18:17

Вот таким получился SQL запрос для смены ид пользователя в 3.4x. Для других 3.x версии некоторые таблицы могут отсутствовать.

Запрос удален по причине ошибке в логике

Не рекомендуется задавать ид типа "99999", иначе собьется счетчик автоинкремента, и регистрация всех последующих пользователей начнется с этого ид.
1

#4 Пользователь не на сайте   siv1987 ответил: »

 
 
  • Advanced
  • Insert nick to fast reply form
  • Quote selected text to fast reply form
  • Группа: IPB Skins Team
  • Сообщений: 9 048
  • Регистрация: 20-Март 09
  • Репутация: 2 415
  • IPB version:3.1.x
 

Отправлено 25 Декабрь 2016 - 19:44

SQL запросы для замены ид пользователя в 3.4x.

Указать для @old_member_id и @new_member_id старый и новый id и выполнить блок запросов:

SET @old_member_id = старый_ид;
SET @new_member_id = новый_ид;
UPDATE ibf_members SET member_id=@new_member_id WHERE member_id=@old_member_id;
UPDATE ibf_admin_logs SET member_id=@new_member_id WHERE member_id=@old_member_id;
UPDATE ibf_announcements SET announce_member_id=@new_member_id WHERE announce_member_id=@old_member_id;
UPDATE ibf_attachments SET attach_member_id=@new_member_id WHERE attach_member_id=@old_member_id;
UPDATE ibf_core_item_markers_storage SET item_member_id=@new_member_id WHERE item_member_id=@old_member_id;
UPDATE ibf_core_like SET like_member_id=@new_member_id WHERE like_member_id=@old_member_id;
UPDATE ibf_core_share_links_log SET log_member_id=@new_member_id WHERE log_member_id=@old_member_id;
UPDATE ibf_core_soft_delete_log SET sdl_obj_member_id=@new_member_id WHERE sdl_obj_member_id=@old_member_id;
UPDATE ibf_core_sys_bookmarks SET bookmark_member_id=@new_member_id WHERE bookmark_member_id=@old_member_id;
UPDATE ibf_core_tags SET tag_member_id=@new_member_id WHERE tag_member_id=@old_member_id;
UPDATE ibf_dnames_change SET dname_member_id=@new_member_id WHERE dname_member_id=@old_member_id;
UPDATE ibf_forums SET last_poster_id=@new_member_id WHERE last_poster_id=@old_member_id;
UPDATE ibf_forums_archive_posts SET archive_author_id=@new_member_id WHERE archive_author_id=@old_member_id;
UPDATE ibf_forums_recent_posts SET post_author_id=@new_member_id WHERE post_author_id=@old_member_id;
UPDATE ibf_ignored_users SET ignore_owner_id=@new_member_id WHERE ignore_owner_id=@old_member_id;
UPDATE ibf_ignored_users SET ignore_ignore_id=@new_member_id WHERE ignore_ignore_id=@old_member_id;
UPDATE ibf_inline_notifications SET notify_to_id=@new_member_id WHERE notify_to_id=@old_member_id;
UPDATE ibf_inline_notifications SET notify_from_id=@new_member_id WHERE notify_from_id=@old_member_id;
UPDATE ibf_members_partial SET partial_member_id=@new_member_id WHERE partial_member_id=@old_member_id;
UPDATE ibf_member_status_actions SET action_member_id=@new_member_id WHERE action_member_id=@old_member_id;
UPDATE ibf_member_status_replies SET reply_member_id=@new_member_id WHERE reply_member_id=@old_member_id;
UPDATE ibf_member_status_updates SET status_member_id=@new_member_id WHERE status_member_id=@old_member_id;
UPDATE ibf_member_status_updates SET status_author_id=@new_member_id WHERE status_author_id=@old_member_id;
UPDATE ibf_message_posts SET msg_author_id=@new_member_id WHERE msg_author_id=@old_member_id;
UPDATE ibf_message_topics SET mt_starter_id=@new_member_id WHERE mt_starter_id=@old_member_id;
UPDATE ibf_message_topics SET mt_to_member_id=@new_member_id WHERE mt_to_member_id=@old_member_id;
UPDATE ibf_message_topic_user_map SET map_user_id=@new_member_id WHERE map_user_id=@old_member_id;
UPDATE ibf_mobile_device_map SET member_id=@new_member_id WHERE member_id=@old_member_id;
UPDATE ibf_mobile_notifications SET member_id=@new_member_id WHERE member_id=@old_member_id;
UPDATE ibf_moderators SET member_id=@new_member_id WHERE member_id=@old_member_id;
UPDATE ibf_moderator_logs SET member_id=@new_member_id WHERE member_id=@old_member_id;
UPDATE ibf_pfields_content SET member_id=@new_member_id WHERE member_id=@old_member_id;
UPDATE ibf_polls SET starter_id=@new_member_id WHERE starter_id=@old_member_id;
UPDATE ibf_posts SET author_id=@new_member_id WHERE author_id=@old_member_id;
UPDATE ibf_profile_friends SET friends_member_id=@new_member_id WHERE friends_member_id=@old_member_id;
UPDATE ibf_profile_friends_flood SET friends_member_id=@new_member_id WHERE friends_member_id=@old_member_id;
UPDATE ibf_profile_portal SET pp_member_id=@new_member_id WHERE pp_member_id=@old_member_id;
UPDATE ibf_profile_portal_views SET views_member_id=@new_member_id WHERE views_member_id=@old_member_id;
UPDATE ibf_profile_ratings SET rating_for_member_id=@new_member_id WHERE rating_for_member_id=@old_member_id;
UPDATE ibf_profile_ratings SET rating_by_member_id=@new_member_id WHERE rating_by_member_id=@old_member_id;
UPDATE ibf_reputation_index SET member_id=@new_member_id WHERE member_id=@old_member_id;
UPDATE ibf_tags_index SET member_id=@new_member_id WHERE member_id=@old_member_id;
UPDATE ibf_topics SET starter_id=@new_member_id WHERE starter_id=@old_member_id;
UPDATE ibf_topics SET last_poster_id=@new_member_id WHERE last_poster_id=@old_member_id;
UPDATE ibf_topic_ratings SET rating_member_id=@new_member_id WHERE rating_member_id=@old_member_id;
UPDATE ibf_validating SET member_id=@new_member_id WHERE member_id=@old_member_id;
UPDATE ibf_voters SET member_id=@new_member_id WHERE member_id=@old_member_id;

Все запросы выполнить одним блоком.

(!) Запросы написаны исключительно для ознакомительных целях! Автор не несет никакой ответственности за ущерб полученный в ходе их работы.
0

Сообщить об этой теме:


Страница 1 из 1


Быстрый ответ

  

1 пользователей читают эту тему
0 зарегистрированных, 1 гостей, 0 скрытых


Контактная информация

Вопросы по работе сайта

+7 (917) 501-4765
C 10 до 20 в рабочие дни (время московское)

Техническая поддержка

Контактные данные специалистов

Дизайн форумов

IPB 3.x ¦ IPB 2.x

Бесплатные шаблоны

IPB 3.2 – 3.4 ¦ IPB 3.1 ¦ IPB 3.0 ¦ IPB 2.2 – 2.3 ¦ IPB 2.1 ¦ Клипарт
Лицензия на использование ¦ Ваша поддержка ¦ О проекте
Copyright © 2005-2017 IPBSkins.ru Team
При копировании материалов с сайта
прямая ссылка на источник обязательна