Я пытаюсь сбросить пароль администратора Joomla, выполнив следующий код в MySQL:
INSERT INTO `jos_users` (`id`,`name`, `username`, `password`, `params`)
VALUES (LAST_INSERT_ID(),'Administrator2', 'admin2',
'd2064d358136996bd22421584a7cb33e:trd7TvKHx6dMeoMmBVxYmg0vuXEA4199', '');
INSERT INTO `jos_user_usergroup_map` (`user_id`,`group_id`)
VALUES (LAST_INSERT_ID(),'8');
Когда я пытаюсь выполнить его, я получаю следующую ошибку:
Failed to execute SQL : SQL INSERT INTO `jos_users` (`id`,`name`, `username`, `password`, `params`) VALUES (LAST_INSERT_ID(),'Administrator2', 'admin2',
'd2064d358136996bd22421584a7cb33e:trd7TvKHx6dMeoMmBVxYmg0vuXEA4199', ''); INSERT INTO
`jos_user_usergroup_map` (`user_id`,`group_id`) VALUES (LAST_INSERT_ID(),'8'); failed :
You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'INSERT INTO `jos_user_usergroup_map` (`user_id`,`group_id`) VALUES (LAST_INSERT_' at line 1
Может ли кто-нибудь сказать мне, где мой синтаксис может быть неправильным? Я использую MySQL версии 5.0.95.
Используйте обратные галочки (`) вокруг пароля имени столбца (пароль - это зарезервированная работа в MySQL), если вы не используете. Не используйте LAST_INSERT_ID () в первом запросе, так как вы еще не добавили никаких записей в эту таблицу. Запросы будут
INSERT INTO jos_users (`name`, `username`, `password`, `params`)
VALUES ('Administrator2', 'admin2', 'd2064d358136996bd22421584a7cb33e:trd7TvKHx6dMeoMmBVxYmg0vuXEA4199', '');
INSERT INTO `jos_user_usergroup_map` (`user_id`,`group_id`)
VALUES (LAST_INSERT_ID(),'8');
Убедитесь, что вы выполняете эти запросы в одном сеансе.