【发布时间】:2018-11-21 21:47:44
【问题描述】:
我在 mySQL 中创建存储过程时遇到问题。我认为问题在于它将我的分隔符视为字符串,但我可能错了。这是我的代码:
DELIMITER //
CREATE PROCEDURE getOrderInfo (IN whichorderID int)
BEGIN
SELECT hslineitem.orderId, hsorders.orderdate, hslineitem.partNum, hslineitem.numOrdered,
hslineitem.price
FROM hslineitem, hsorders
WHERE hslineitem.orderId = hsorders.orderId
AND orderID = whichorderID ;
END
//
DELIMITER;
那么,我需要用一种特定的方式来识别它是分隔符而不是字符串吗?我一直在网上查看其他示例,它们似乎没有什么不同。提前致谢!
【问题讨论】:
-
1.你是如何运行这个查询的? 2. 为什么选择
//?您是否尝试过其他方法,例如$$? -
只需将分隔符切换回原来的样子 ;-) 。 :-)
END // DELIMITER ; -
$$ 也不起作用。这是我的书提供给我的仅有的两个例子,也是我在网上找到的仅有的两个。
-
Alex,您能否进一步详细说明您之前所说的含义?我不确定我是否理解。
-
可能只是“DELIMITER”和最后一个分号之间缺少空格吗?