是否可以从另一个sql脚本中的存储过程中调用sql脚本?
我想用。像这样从存储的过程中调用sql脚本…
delimiter ///create procedure append_procedure()
BEGIN
\. test.sql;
END; ///
delimiter ;
我收到“无法打开’test.sql;’的消息” 我以这种方式运行时出错。我也尝试过!但随后出现权限被拒绝错误。但是,我无法消除;;
或整个事情坏了。有没有解决的办法?
我究竟做错了什么?
回答:
mysql客户端内置了一组命令。它们记录在“
mysql
命令 ”
下。这些包括DELIMITER,SOURCE,HELP,CONNECT,USE,QUIT等。
的\.
(或SOURCE
)命令是这些建宏之一。
就像试图使用C从C程序运行内置的UNIX shell一样execl()
。
在网络浏览器中可能有不同的类比,您可以在其中键入about:
由浏览器应用本身处理的特殊请求,例如“ ”;这些不会导致对远程网站的任何HTTP请求。
另外,如果可以从存储过程中获取脚本也无济于事,因为脚本本身可能包含一堆由mysql客户端内置的命令,因此无法由存储过程运行。
另请参阅我对以下相关问题的回答:
- 在PHP中运行MySQL * .sql文件
- 从PHP内加载.sql文件
- PHP:在一个mysql_query语句中进行多个SQL查询
以上是 是否可以从另一个sql脚本中的存储过程中调用sql脚本? 的全部内容, 来源链接: utcz.com/qa/404788.html