powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / MySQL [игнор отключен] [закрыт для гостей] / Как вызвать хранимую функцию MySQL
3 сообщений из 3, страница 1 из 1
Как вызвать хранимую функцию MySQL
    #38347946
nkl90
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Есть функция:
Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
CREATE DEFINER = 'root'@'%'
FUNCTION insertMegaRow(Param1 bigint UNSIGNED, Param2 int)
RETURNS INT
BEGIN
INSERT INTO table1 (column1) VALUE (Param1);
SET lastInsertId = SELECT LAST_INSERT_ID;
INSERT INTO table2 (column1, column2) VALUE(lastInsertId, Param2);
RETURN 1;
END


Как вызвать эту функцию? Уже что-то намекнули на другом форуме про call и use, но я так и не пойму. Так:
Код: sql
1.
SELECT insertMegaRow (1, 2);

не работает. Блин, да я уже разобрался как мне её из приложения вызвать при помощи Kohana ORM, а как это сделать в консоли, просто для отладки не пойму. Уже как только не спрашивал у гугла, не находит нужный кусок кода и все тут. Помогите, ведь это всего лишь синтаксис, я не прошу раскрытия каких-то сакральных знаний, дальше я сам разберусь. Сроки оооочень жмут.
...
Рейтинг: 0 / 0
Как вызвать хранимую функцию MySQL
    #38347951
nkl90
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Если использовать так:
Код: sql
1.
SELECT insertMegaRow (1, 2);


Выдает ошибку: Unknown column '$id' in 'field list', а вообще, функция выглядит так:
Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
REATE DEFINER = 'root'@'%'
FUNCTION ecollege.addContingent(ayearID int UNSIGNED, departmentID tinyint UNSIGNED,
sofID int UNSIGNED, specialtyID bigint UNSIGNED, tot_id tinyint UNSIGNED, fileNumber int UNSIGNED,
dateOfReceipt date, firstName varchar(50), lastName varchar(50), Patronomic varchar(50), institutionID bigint UNSIGNED,
yearOfGrad year, awardID int UNSIGNED, orphan tinyint UNSIGNED, disabilityID tinyint UNSIGNED, cityPhone1 varchar(50), mobilePhone1 varchar(50), village tinyint UNSIGNED,
hostel tinyint UNSIGNED, exameDate date, totalPoints tinyint UNSIGNED, profPoints tinyint UNSIGNED,
Agreement tinyint UNSIGNED)
RETURNS int(11)
BEGIN
INSERT INTO contingent (file_number, date_of_receipt, first_name, last_name, patronomic,
year_of_grad, orphan, village, hostel, exame_date, total_points, prof_points, agreement) VALUES (
fileNumber, dateOfReceipt, firstName, lastName, Patronomic, yearOfGrad, orphan, village, hostel,
exameDate, totalPoints, profPoints, Agreement);
set @id = LAST_INSERT_ID();
INSERT INTO main_contingent_options_relationship (contingent_id, ayear_id, department_id, sof_id,
specialty_id, tot_id) VALUES
(@id, ayearID, departmentID, sofID, specialtyID, tot_id);

INSERT INTO `contingent-institution_relationship` (contingent_id, institution_id) VALUES (@id, institutionID);
INSERT INTO `contingent-award_relationship` (contingent_id, award_id) VALUES (@id, awardID);
INSERT INTO `contingent-disability_relationship` (contingent_id, disability_id) VALUES (@id, disabilityID);
INSERT INTO `contingent-address_relationship` (contingent_id, address_id) VALUES ($id, addressID);
RETURN 1;
END
...
Рейтинг: 0 / 0
Как вызвать хранимую функцию MySQL
    #38347960
nkl90
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Всем спасибо, разобрался сам. У меня в функции ошибочка вкралась
...
Рейтинг: 0 / 0
3 сообщений из 3, страница 1 из 1
Форумы / MySQL [игнор отключен] [закрыт для гостей] / Как вызвать хранимую функцию MySQL
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]