如何入门学习MySQL存储过程?
- 内容介绍
- 文章标签
- 相关推荐
本文共计2678个文字,预计阅读时间需要11分钟。
0. 环境说明: - MySQL版本:5.7
1. 使用说明: - 存储过程是数据库的一个重要对象,可以封装SQL语句集,用于执行复杂的业务逻辑,并可通过参数进行输入输出,类似于Java中的方法。
0.环境说明:mysql版本:5.7
1.使用说明 存储过程是数据库的一个重要的对象,可以封装SQL语句集,可以用来完成一些较复杂的业务逻辑,并且可以入参出参(类似于java中的方法的书写)。
创建时会预先编译后保存,用户后续的调用都不需要再次编译。
// 把editUser类比成一个存储过程
public void editUser(User user,String username){
String a = "nihao";
user.setUsername(username);
}
main(){
User user = new User();
editUser(user,"张三");
user.getUseranme(); //java基础还记得不
}
大家可能会思考,用sql处理业务逻辑还要重新学,我用java来处理逻辑(比如循环判断、循环查询等)不行吗?那么,为什么还要用存储过程处理业务逻辑呢?
优点:
在生产环境下,可以通过直接修改存储过程的方式修改业务逻辑(或bug),而不用重启服务器。
执行速度快,存储过程经过编译之后会比单独一条一条执行要快。
减少网络传输流量。
方便优化。
缺点:
过程化编程,复杂业务处理的维护成本高。
调试不便
不同数据库之间可移植性差。
本文共计2678个文字,预计阅读时间需要11分钟。
0. 环境说明: - MySQL版本:5.7
1. 使用说明: - 存储过程是数据库的一个重要对象,可以封装SQL语句集,用于执行复杂的业务逻辑,并可通过参数进行输入输出,类似于Java中的方法。
0.环境说明:mysql版本:5.7
1.使用说明 存储过程是数据库的一个重要的对象,可以封装SQL语句集,可以用来完成一些较复杂的业务逻辑,并且可以入参出参(类似于java中的方法的书写)。
创建时会预先编译后保存,用户后续的调用都不需要再次编译。
// 把editUser类比成一个存储过程
public void editUser(User user,String username){
String a = "nihao";
user.setUsername(username);
}
main(){
User user = new User();
editUser(user,"张三");
user.getUseranme(); //java基础还记得不
}
大家可能会思考,用sql处理业务逻辑还要重新学,我用java来处理逻辑(比如循环判断、循环查询等)不行吗?那么,为什么还要用存储过程处理业务逻辑呢?
优点:
在生产环境下,可以通过直接修改存储过程的方式修改业务逻辑(或bug),而不用重启服务器。
执行速度快,存储过程经过编译之后会比单独一条一条执行要快。
减少网络传输流量。
方便优化。
缺点:
过程化编程,复杂业务处理的维护成本高。
调试不便
不同数据库之间可移植性差。

