Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/sql/82.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
返回表的MySQL存储过程_Mysql_Sql - Fatal编程技术网

返回表的MySQL存储过程

返回表的MySQL存储过程,mysql,sql,Mysql,Sql,我试图创建一个存储过程来从表中返回数据。我正在使用MySQL。 代码如下: CREATE DEFINER=`imswms`@`10.0.90.%` FUNCTION `sp_daily_numbers_by_man_and_prod`(`man` VARCHAR(100), `startDate` DATETIME, `endDate` DATETIME) RETURNS SET LANGUAGE SQL NOT DETERMINISTIC READS SQL DATA SQL SECURITY

我试图创建一个存储过程来从表中返回数据。我正在使用MySQL。 代码如下:

CREATE DEFINER=`imswms`@`10.0.90.%` FUNCTION `sp_daily_numbers_by_man_and_prod`(`man` VARCHAR(100), `startDate` DATETIME, `endDate` DATETIME)
RETURNS SET
LANGUAGE SQL
NOT DETERMINISTIC
READS SQL DATA
SQL SECURITY DEFINER
COMMENT ''
BEGIN
select * from dailynumbersdetails 
 where dailynumbersdetails.PostDate >= startDate 
    and dailynumbersdetails.PostDate < endDate 
    and dailynumbersdetails.Manufacturer = man 
    group by dailynumbersdetails.PartNumber;
END
CREATE DEFINER=`imswms`@`10.0.90.%`函数`sp\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\
返回集
语言SQL
不确定
读取SQL数据
SQL安全定义程序
注释“”
开始
从DailyNumber详细信息中选择*
其中dailynumbersdetails.PostDate>=startDate
和dailynumbersdetails.PostDate
但在尝试保存该过程时,出现以下错误:

SQL错误(1064):您的SQL语法有错误;查看与MySQL服务器版本对应的手册,以了解第3行“语言SQL非确定性读取SQL数据SQL安全定义器命令”附近使用的正确语法


有什么问题吗?

语法不正确。您创建了一个函数,但需要创建一个返回结果集的过程。试试这个代码-

CREATE DEFINER = 'imswms'@'10.0.90.%'
PROCEDURE `sp_daily_numbers_by_man_and_prod` (`man` VARCHAR(100), `startDate` DATETIME, `endDate` DATETIME)
SQL SECURITY DEFINER
COMMENT ''
BEGIN
  SELECT * FROM dailynumbersdetails
  WHERE dailynumbersdetails.PostDate >= startDate
  AND dailynumbersdetails.PostDate < endDate
  AND dailynumbersdetails.Manufacturer = man
  GROUP BY dailynumbersdetails.PartNumber;
END
CREATE DEFINER='imswms'@'10.0.90.%
程序'sp_daily_numbers_由'u man_和'u prod'('man'VARCHAR(100),'startDate'DATETIME,'endDate'DATETIME)
SQL安全定义程序
注释“”
开始
从DailyNumber详细信息中选择*
其中dailynumbersdetails.PostDate>=startDate
和dailynumbersdetails.PostDate