- Регистрация
- 21 Авг 2008
- Сообщения
- 368
- Реакции
- 191
- Автор темы
- Заблокирован
- #1
Здравствуйте! Есть примерно следующий код
Но он, сволочь, почему-то берёт имя базы данных, для FROM, не из локальной переменной, указанной тут
,а просто что ему указали
.
У меня уже голова болит над этим думать. В общем просто подскажите как в процедуре сделать FROM из базы данных, префикс для которой должен передаваться в качестве параметра.
P.S.: Либо как экранировать ( в этом коде
, потому что эта сволочь на неё жалуется. Типа не может быть в запросе FROM этого (
Решил по совету Для просмотра ссылки Войдиили Зарегистрируйся с помощью Для просмотра ссылки Войди или Зарегистрируйся.
Код:
DELIMITER $$
CREATE PROCEDURE `mydb`.`myProcedure` (IN dbPrefix VARCHAR(10), IN Id INT(11))
BEGIN
DECLARE peoples VARCHAR(28) DEFAULT CONCAT(dbPrefix, 'peoples');
SELECT * FROM peoples WHERE `id` = Id;
END
Код:
DECLARE peoples VARCHAR(28) DEFAULT CONCAT(dbPrefix, 'peoples');
Код:
FROM peoples
У меня уже голова болит над этим думать. В общем просто подскажите как в процедуре сделать FROM из базы данных, префикс для которой должен передаваться в качестве параметра.
P.S.: Либо как экранировать ( в этом коде
Код:
FROM CONCAT(dbPrefix, peoples)
Решил по совету Для просмотра ссылки Войди