Создание процедуры в 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 bruger.brugernavn=@brugernavn AND bruger.pass=@Password;
END;
спасибо заранее
3 ответов
теперь я понял. Вот правильный ответ
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. Приведенный выше синтаксис является правильным.
его очень легко создать процедуру в 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');