Создание процедуры в mySql с параметрами
Я пытаюсь сделать хранимую процедуру с помощью mySQL. Эта процедура будет проверять имя пользователя и пароль. В настоящее время я запускаю mySQL 5.0.32, чтобы было возможно создавать процедуры.
Вот код, который я использовал. Все, что я получаю, это синтаксическая ошибка SQL.
GO
CREATE PROCEDURE checkUser
(IN @brugernavn varchar(64)),IN @password varchar(64))
BEGIN
SELECT COUNT(*) FROM bruger WHERE [email protected] AND [email protected];
END;
Заранее благодарю
Ответы
Ответ 1
Я понял это сейчас. Вот правильный ответ
CREATE PROCEDURE checkUser
(
brugernavn1 varchar(64),
password varchar(64)
)
BEGIN
SELECT COUNT(*) FROM bruger
WHERE bruger.brugernavn=brugernavn1
AND bruger.pass=password;
END;
@указывает на глобальный var в mysql. Вышеупомянутый синтаксис верен.
Ответ 2
(IN @brugernavn varchar(64)**)**,IN @password varchar(64))
Проблема заключается в )
Ответ 3
Это очень легко создать процедуру в Mysql. Здесь, в моем примере, я собираюсь создать процедуру, которая отвечает за выборку всех данных из таблицы учеников в соответствии с предоставленным именем.
DELIMITER //
CREATE PROCEDURE getStudentInfo(IN s_name VARCHAR(64))
BEGIN
SELECT * FROM student_database.student s where s.sname = s_name;
END//
DELIMITER;
В приведенном выше примере имена базы данных и таблицы - student_database и student соответственно. Примечание: вместо s_name вы также можете передать @s_name в качестве глобальной переменной.
Как вызвать процедуру? Что ж! это очень просто, просто вы можете вызвать процедуру, нажав эту команду
$mysql> CAll getStudentInfo('pass_required_name');
![enter image description here]()