[英]phpmyadmin stored procedure error
我試圖在phpmyadmin網站托管服務器中運行SP,但始終出現以下錯誤
1064-您的SQL語法有誤; 檢查與您的MySQL服務器版本相對應的手冊以獲取在第4行的''附近使用的正確語法
我要運行的SP是:
CREATE PROCEDURE Authenticate_UserByEmailID(strUsername VARCHAR(45), strPassword VARCHAR(45))
BEGIN
SELECT * FROM users
WHERE users.Username = strUsername AND users.Password = strPassword;
END $$
我嘗試在SP名稱,表名稱列名稱和其他帶有引號的其他組合中加上單引號,但沒有結果,然后我遇到了此鏈接,並嘗試更改定界符但沒有結果。 你能幫忙嗎?
抱歉,我不好。 我添加了定界符,它為我解決了這個問題。
DELIMITER ;;
CREATE PROCEDURE `Authenticate_UserByEmailID`(strUsername VARCHAR(45), strPassword VARCHAR(45))
BEGIN
SELECT * FROM DBCompany_samsonusac517644.users
WHERE Username = strUsername AND Password = strPassword;
END ;;
您錯過了DELIMITER
mysql> delimiter $$
mysql> CREATE PROCEDURE Authenticate_UserByEmailID(strUsername VARCHAR(45), strPassword VARCHAR(45))
-> BEGIN
-> SELECT * FROM users
-> WHERE users.Username = strUsername AND users.Password = strPassword;
-> END $$
Query OK, 0 rows affected (0.01 sec)
以上所有答案均做出某些假設。 1and1中存在一些基本問題,某些其他托管服務提供商正在使用phpMyAdmin版本,這些版本非常舊,並且存在定義的定界符為的問題; 並且沒有辦法從phpMyAdmin進行更改。 一些提供程序已經繼續前進,因此他們將不會遇到此問題。 但如果您這樣做,則可以按照以下方式進行操作-
希望這可以幫助
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.