5
我已經在這個問題上搜索了很多,但找不到解決方案。Mysql Stored Proceedure:DEFINER =`root` @`%`在localhost中不工作
我使用存儲過程:
DELIMITER $$
CREATE DEFINER=`root`@`%` PROCEDURE `GetImages`(
in search Varchar(80)
)
BEGIN
select
image_path
from check_images
where checkNumber=search;
END
它不是在本地主機工作,並得到以下錯誤:
Error Number: 1449
The user specified as a definer ('root'@'%') does not exist
但如果我代替%符號與「本地主機」(「根」 @ 'localhost'),那麼一切都很完美。此外,我不允許更改存儲過程。所以請告訴我最好的解決方案,我該如何克服這個問題。
我會很感激任何幫助。
謝謝
非常感謝你的快速回復。 我想選擇第二個選項,創建用戶。你能給我提示一下,我可以爲'root'@'%'創建用戶嗎? – Maria
太好了,你幫了我很多,我修好了,因爲你。非常感謝你 – Maria
@ user3043360很高興提供幫助。我應該注意到,通常從本地主機以外的任何地方設置root訪問權限都被視爲安全漏洞。真的,在大多數情況下,應用程序不應該使用'root',而應該定義特定於應用程序的用戶。 –