Хранимые процедуры

Lesha

Новичок
Привет всем!!! Хочу написать простую хранимую процедуру, которая выполняла функцию SELECT*FROM 'table_name'. Чтобы каждый раз не писать SELECT, а просто вызывать эту процедуру. Написал скрипт на MySQL вызываю выдает ошибку :

Error Code : 1436
Thread stack overrun: 6436 bytes used of a 131072 byte stack, and 128000 bytes needed. Use 'mysqld -O thread_stack=#' to specify a bigger stack.
Execution Time : 00:00:00:000
Transfer Time : 00:00:00:000
Total Time : 00:00:00:000

Вот скрипт ХП

CREATE DEFINER=`root`@`localhost` PROCEDURE `sp_baho`()
BEGIN
DECLARE b_matem INT;
DECLARE b_fizik INT;
DECLARE b_himik INT;
DECLARE b_biolog INT;
DECLARE b_istoria INT;
DECLARE b_yazik INT;

DECLARE Matem INT;
DECLARE Fizik INT;
DECLARE Biolog INT;
DECLARE Istoria INT;
DECLARE Yazik INT;

SELECT Matem, Fizik, Himik, Biolog, Istoria, Yazik INTO b_matem, b_fizik, b_himik, b_biolog, b_istoria, b_yazik FROM PrezLit.tblClassRu LIMIT 1;

END

sql_mode:

Это имена полей таблицы: Matem, Fizik, Himik, Biolog, Istoria, Yazik.
Это созданные переменные: b_matem, b_fizik, b_himik, b_biolog, b_istoria, b_yazik.
 

bobo

Новичок
Ээм, а что есть в запросе SELECT Matem, Fizik, Himik, Biolog, Istoria, Yazik INTO b_matem, b_fizik, b_himik, b_biolog, b_istoria, b_yazik FROM PrezLit.tblClassRu LIMIT 1; ?

Ибо:

"[INTO {OUTFILE | DUMPFILE} 'file_name' export_options]"

з.ы. Да, я нуп :)
 

Lesha

Новичок
Этим запросом хотел присвоить значения полей переменным
 

bobo

Новичок
Этим запросом хотел присвоить значения полей переменным
Ээээммм???
Так то просто SELECT'ом вы значения переменных из базы не получите, учите матчасть, батенька :)

з.ы. Т.е. получите канешно, но для вывода их надо будет обработать с помощью, например, mysql_fetch_array
 

bobo

Новичок
$array_namecl = mysql_fetch_assoc(mysql_query("SELECT `name`,`surname` FROM `clients` WHERE `id` = ' " . $idcl . " ')) or die(mysql_error());

$name = $array_namecl['name'];
$surname = $array_namecl['surname'];

:)
 

Lesha

Новичок
а могу я получить эти данные не с помощью РНР, а просто в самом MySQL?
 

bobo

Новичок
Канешно.
SELECT `Matem`, `Fizik`, `Himik`, `Biolog`, `Istoria`, `Yazik` FROM `PrezLit.tblClassRu` LIMIT 1;
 

Lesha

Новичок
а этот запрос можно использовать внутри хранимой процедуры MySQL?
 

Sorc17

Новичок
Thread stack overrun: 6436 bytes used of a 131072 byte stack, and 128000 bytes needed. Use 'mysqld -O thread_stack=#' to specify a bigger stack.
Тут написано то, что написано, ваш скрипт тут не при чём. Напишите в конфиге mysql сервера
И начинайте думать над тем чтобы обновить mysql сервер.

Хранимая процедура по сути просто сохранённый на сервере кусок mysql кода, понятно что код этот может быть почти любой.
 

tz-lom

Продвинутый новичок
Тут написано то, что написано, ваш скрипт тут не при чём. Напишите в конфиге mysql сервера

И начинайте думать над тем чтобы обновить mysql сервер.

Хранимая процедура по сути просто сохранённый на сервере кусок mysql кода, понятно что код этот может быть почти любой.
ваши знания языка поражают! но вы не пробовали читать тему??
 
Сверху