|
什么是存储过程
存储过程(Stored Procedure)是一种在数据库中存储复杂程序,以便外部程序调用的一种数据库对象。简单理解,存储过程其实就是一堆SQL语句的合并。中间加入了一些逻辑控制。
存储过程的创建方式
存储过程的创建方式:
1.创建无参存储过程
1.语法格式:- delimiter $$ --声明一个存储过程的定义开始
- create procedure 存储过程名称() --声明存储过程的名称
- begin --表示存储过程内部的SQL语句的开始
- #表示将要执行的SQL语句
- end $$ -- 表示声明这个存储过程的定义结束;end: 表示存储过程内部SQL语句的声明结束
复制代码 2.调用存储过程:调用过程类似Java中方法的调用。2.有参存储过程
在调用存储过程的时候,需要调用某些参数,给存储过程;
1.语法格式- delimiter $$ --声明一个存储过程的定义开始
- create procedure 存储过程名称(IN 参数名称 参数数据类型) --声明存储过程的名称
- begin --表示存储过程内部的SQL语句的开始
- #SQL语句操作
- end $$
复制代码 IN关键字:用来指定当前存储过程可以接受的参数列表
参数名称 参数数据类型:在接收参数的时候,存储过程需要指定参数名称和当前参数的类型.
2.有参存储过程调用- call 存储过程名(参数值); #括号!一定!不能省略!
复制代码 3.案例演示
无参:
1:数据准备,创建商品表与订单表,并向商品表中添加数据。- #商品表
- CREATE TABLE goods(
- gid INT,
- name VARCHAR(20),
- num INT --库存
- );
- #订单表
- CREATE TABLE orders(
- oid INT,
- gid INT,
- price INT --订单价格
- );
- INSERT INTO goods VALUES(1,'玫瑰花',99);
- INSERT INTO goods VALUES(2,'向日葵',19);
- INSERT INTO goods VALUES(3,'彼岸花',9);
复制代码 2.需求:编写存储过程,查询所有商品数据- DELIMITER $$
- CREATE PROCEDURE goods_proc()
- BEGIN
- SELECT * FROM goods;
- END $$
复制代码 3.调用存储过程- call goods_proc(); #括号可以省略
复制代码 有参:
1.需求,根据id删除对应的商品数据- DELIMITER $$
- CREATE PROCEDURE goods_delById_proc(IN goods_id INT)
- BEGIN
- DELETE FROM goods WHERE gid = goods_id;
- END $$
复制代码 2.调用存储过程- call goods_delById_proc(1); #删除商品id为1的商品数据
复制代码 来源:https://www.cnblogs.com/SkRun/p/17063377.html
免责声明:由于采集信息均来自互联网,如果侵犯了您的权益,请联系我们【E-Mail:cb@itdo.tech】 我们会及时删除侵权内容,谢谢合作! |
|