Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Web программирование > SQL, базы данных
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 09.12.2011, 13:58   #1
kuzjma
Пользователь Подтвердите свой е-майл
 
Аватар для kuzjma
 
Регистрация: 02.01.2007
Сообщений: 62
По умолчанию Динамические запросы в MySQL

Наткнулся на такую вещь, что в MySQL нельзя выполнять динамические запросы из функций. Пробую реализовать через процедуру, но ни как не могу понять, как вернуть результаты запроса и какой тип данных нужно задать переменной, которая будет их хранить.
Код:
DROP FUNCTION IF EXISTS get_next_id;//
DROP PROCEDURE IF EXISTS execute_query;//

delimiter //
CREATE PROCEDURE execute_query(IN query TEXT, OUT qresults TEXT)
BEGIN
	PREPARE query FROM @query;
	EXECUTE query;
	DEALLOCATE PREPARE qresults;
END;//


delimiter //
CREATE FUNCTION get_next_id(table_name VARCHAR(50), table_column VARCHAR(50)) RETURNS INT
BEGIN
	DECLARE qresults TEXT;
	SET query = CONCAT("SELECT ", table_column, " INTO qresults FROM ", table_name);
	
	CALL execute_query(query, qresults);
	
	RETURN qresults;
END;//
Может кто пояснит как получить результаты запроса в переменную qresults, и потом перебрать?
kuzjma вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Delphi+MySQL = запросы Alana БД в Delphi 15 12.04.2012 11:01
Mysql запросы Lerank Помощь студентам 1 22.11.2010 18:00
MySQL. Многотабличные запросы GenbI4 Помощь студентам 4 12.11.2009 13:00
DeLphi +Mysql запросы ! Flanker13 БД в Delphi 10 06.04.2009 15:30