CREATE PROCEDURE `usp_GetUserValidation`
(IN `@Username` VARCHAR(255),
IN `@Password` VARCHAR(50),
OUT `@ErrorCode` INT)
LANGUAGE SQL
NOT DETERMINISTIC
CONTAINS SQL
SQL SECURITY DEFINER
COMMENT 'To validate user login'
BEGIN
IF EXISTS
(SELECT UserID
FROM mt_User
WHERE Username = `@Username`
AND Password = PASSWORD(`@Password`))
BEGIN
SET `@ErrorCode` = 0;
END
ELSE
SET `@ErrorCode` = 1;
SELECT '@ErrorCode' AS res
END
Hallo Leute. Ich bin ein SQL Server-Benutzer. Kürzlich habe ich angefangen, etwas über MySQL und seine gespeicherten Prozeduren (Routinen) zu lernen. Kann jemand darauf hinweisen, was der Fehler ist, den ich gemacht habe, der den folgenden Fehler verursacht? Vielen Dank im Voraus Jungs :)MySQL - Stored Procedures Syntax Problem
1064 - You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use
near 'BEGIN SET
@ErrorCode
= 0' at line 15
Ich denke, zwischen Begin und Ende Sie eine tatsächliche Abfrage benötigen, nicht nur „was auch immer setzen“. Basierend auf dem Blick auf das Handbuch, wie in dem Fehler vorgeschlagen: http://dev.mysql.com/doc/refman/5.7/en/create-procedure.html – Andrew
Ja. Es scheint so :) Vielen Dank, Bruder – DriLLFreAK100