Jump to content
Дизайн и модификация IPS Community IPBSkinsBETA
Search In
  • More options...
Find results that contain...
Find results in...
Sign in to follow this  
Qartvela™

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

Recommended Posts

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

Я хочу поменять мой ID на №1, но он занят другим пользователем.

Надо поменять сначала его ID, а потом мой... Такое можно осуществить?

Share this post


Link to post
Share on other sites

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

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

Это не все, там еще логи, данные профайла, друзья, смена имени ... Надо писать запросы, кропотливо учитывая все таблицы.

 

Чисто теоретически.

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

И сливаем его с ID1.

Он должен сохранить все данные и освободится первая запись.

 

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

 

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

 

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

Share this post


Link to post
Share on other sites

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

 

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

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

  • Upvote 1

Share this post


Link to post
Share on other sites

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;

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

 

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

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
Sign in to follow this  

  • Recently Browsing   0 members

    No registered users viewing this page.

×
×
  • Create New...