DELIMITER,创建存储过程为啥要加DELIMITER
时间: 2024-03-01 20:47:37 浏览: 21
DELIMITER是MySQL中的一个关键字,用于指定自定义的语句分隔符。在MySQL中,默认的语句分隔符是分号(;),而存储过程中可能包含多个语句,这就会导致存储过程中的语句被错误地解析。
为了解决这个问题,我们可以使用DELIMITER关键字来指定一个不常用的分隔符,例如"$$"。在创建存储过程时,将DELIMITER设置为"$$",这样MySQL就会将"$$"作为存储过程的结束标志,而不是默认的分号。
使用DELIMITER的目的是为了确保存储过程中的语句能够正确地被解析和执行,避免因为默认的分号导致语句解析错误。
相关问题
用Delimiter创建一个名为proc_good1的存储过程并调用,用于获取书籍类的平均价格
好的,以下是使用Delimiter创建并调用proc_good1存储过程的 SQL 代码:
```sql
-- 使用Delimiter定义存储过程
DELIMITER //
CREATE PROCEDURE proc_good1()
BEGIN
SELECT AVG(price) AS avg_price FROM goods WHERE category = '书籍';
END //
DELIMITER ;
-- 调用存储过程
CALL proc_good1();
```
这个存储过程与前面的例子类似,不同之处在于我们使用了Delimiter来定义存储过程的语法。在Delimiter定义的开始和结束之间,我们定义了存储过程的名称和代码块。在这个例子中,我们使用SELECT语句计算了符合条件的商品的平均价格,并将结果赋值给avg_price。最后,我们在存储过程的结尾使用END来结束代码块。注意,在存储过程的定义中我们没有使用输入参数,因为这个例子中我们是获取固定条件的商品平均价格。
在定义好存储过程以后,我们使用CALL语句来调用它,并在括号中传入必要的参数。在这个例子中,我们不需要传入任何参数。如果你的存储过程需要输入参数,你需要在CALL语句中传入相应的参数。
phpmyadmin创建存储过程
要在phpMyAdmin中创建存储过程,您可以按照以下步骤操作:
1. 登录phpMyAdmin并选择您要使用的数据库。
2. 在顶部导航栏中,选择“SQL”选项卡以进入SQL查询编辑器。
3. 在编辑器中,输入以下示例代码来创建一个简单的存储过程:
```sql
DELIMITER $$
CREATE PROCEDURE `sp_example`()
BEGIN
-- 在此处编写存储过程的逻辑
END $$
DELIMITER ;
```
4. 替换`sp_example`为您想要的存储过程名称,并在`BEGIN`和`END`之间编写存储过程的逻辑代码。
5. 单击“Go”按钮以执行查询并创建存储过程。
6. 如果一切顺利,您将看到一个成功的消息,表示存储过程已成功创建。
请注意,您可能需要具有足够权限才能在phpMyAdmin中创建存储过程。如果您没有足够的权限,请联系数据库管理员或具有管理员权限的用户以获取帮助。
相关推荐
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)