当前位置: 首页 > news >正文

广州seo网站icp备案查询

广州seo网站,icp备案查询,怎么做个手机版的网站,视频剪辑找什么公司前言 SQL(Structured Query Language)是一种用于管理关系型数据库的标准化语言,它用于定义、操作和管理数据库中的数据。SQL是一种通用的语言,可以用于多种关系型数据库管理系统(RDBMS),如MySQ…

在这里插入图片描述

前言

SQL(Structured Query Language)是一种用于管理关系型数据库的标准化语言,它用于定义、操作和管理数据库中的数据。SQL是一种通用的语言,可以用于多种关系型数据库管理系统(RDBMS),如MySQL、Oracle、SQL Server等。

MySQL是一种开源的关系型数据库管理系统,它使用SQL作为其查询语言。MySQL是最流行的开源数据库之一,它具有高性能、可靠性和可扩展性。MySQL支持多用户、多线程和多表操作,可以在各种操作系统上运行。

因此,SQL是一种语言,而MySQL是一种关系型数据库管理系统,它使用SQL作为其查询语言。SQL可以用于其他关系型数据库管理系统,而MySQL是其中的一种。

在这里插入图片描述

MySQL最为最流行的开源数据库,其重要性不言而喻,也是大多数程序员接触的第一款数据库,深入认识和理解MySQL也比较重要。

本篇博客介绍存储过程 (store procedure),分析其应用领域,在Navicat中使用MySQL的存储过程,并结合Mybatis-Plus使用存储过程。

其他相关的MySQL博客文章列表如下

SQL学习(1)——数据库概念+单表SQL查询+多表SQL查询

SQL进阶(2)——SQL语句类型 & 增删改查CRUD & 事务初步 & 表关联关系 & 视图 +索引


MySQL持久化数据——主从分离 & Linux下创建2个MySQL的Docker容器 & 挂载方式启动 & 配置主从

redis漏洞回顾 & MySQL数据安全解决 搭建主从集群MySQL & 相关设置

在这里插入图片描述

目录

  • 前言
  • 引出
  • 数据库存储过程
    • 什么是存储过程?
    • 应用领域
  • MySQL中使用存储过程
    • 1.新建函数
    • 2.选择模式
    • 4.编写存储过程
    • 5.查询中调用存储过程
  • MybatisPlus使用存储过程
    • 1.新建存储过程
    • 2.注解调用存储过程
    • 3.运行时间对比
  • 总结

引出


1.介绍存储过程 (store procedure);
2.分析其应用领域;
3.Navicat中使用MySQL的存储过程;
结合Mybatis-Plus使用存储过程;

数据库存储过程

什么是存储过程?

数据库存储过程是一组预定义的SQL语句集合,它们被存储在数据库中并可以被多次调用。存储过程通常用于执行一系列的数据库操作,如查询、插入、更新和删除等。存储过程可以接受参数,并且可以包含条件判断、循环和异常处理等逻辑。存储过程可以在数据库服务器上执行,减少了网络传输的开销,提高了数据库的性能和安全性。

存储过程的优点包括:

  1. 提高性能:存储过程在数据库服务器上执行,减少了网络传输的开销,提高了执行效率。
  2. 代码复用:存储过程可以被多次调用,提高了代码的复用性。
  3. 安全性:存储过程可以对数据进行权限控制,只允许授权用户执行特定的操作。
  4. 简化开发:存储过程可以封装复杂的业务逻辑,简化了应用程序的开发过程。

应用领域

在金融领域用的多,互联网领域用的少,阿里甚至禁止使用存储过程,阿里禁止使用存储过程的原因主要有以下几点:

  1. 可移植性:存储过程的语法和特性在不同的数据库管理系统中可能存在差异,使用存储过程会导致应用程序与特定数据库管理系统绑定,降低了应用程序的可移植性。
  2. 可维护性:存储过程通常是在数据库服务器上定义和维护的,而不是在应用程序中。这样会增加应用程序的维护难度,特别是在多个环境中部署和升级时。
  3. 性能问题:存储过程的执行是在数据库服务器上进行的,而不是在应用程序中。这样会增加数据库服务器的负载,并且可能导致性能瓶颈。
  4. 安全性问题:存储过程的执行权限通常是在数据库层面进行控制的,这可能导致安全性问题。如果存储过程的权限设置不当,可能会导致数据泄露或数据被篡改的风险。
  5. 可扩展性问题:存储过程通常是在数据库服务器上执行的,这限制了应用程序的扩展性。如果需要将应用程序部署到多个服务器或云环境中,使用存储过程可能会导致扩展和部署的困难。

基于以上原因,阿里等一些公司更倾向于将业务逻辑放在应用程序中,而不是使用存储过程。这样可以提高应用程序的可移植性、可维护性和性能,并更好地控制安全性和扩展性。然而,是否使用存储过程还是应该根据具体的业务需求和数据库管理系统的特性来决定。

从业务角度来看,存储过程更容易保持业务的规范性、一致性,而互联网不用存储过程主要是因为业务的随意性、一次性。

上个世纪90年代后期。IBM的并行计算机+DB2数据库/Oracle数据库软件是当时选择不多的解决方案。当时的存储和网络的性能都很差,对于银行来说,实在是没有必要和可能把数据从数据库读出来,交由应用服务器处理,系统[吞吐量](TPS指标)太低。相反地,还会导致一系列的分布式处理的问题。

相比银行的财大气粗,当年互联网可是草根,没钱又没人(后来也是一样,大多数公司没钱没人)。当年互联网建站的标配是Apache+PHP+MySQL。MySQL对于[数据库应用 的发展,贡献甚大。虽然MySQL在2003年提供了存储过程,但是在90年代[计算机专业 的教学中,数据库算是小众

https://www.zhihu.com/question/597801920/answer/3003905227?utm_id=0

MySQL中使用存储过程

1.新建函数

在这里插入图片描述

2.选择模式

在这里插入图片描述

指定名字和类型,注意varchar需要指定长度

在这里插入图片描述

不然会报错
在这里插入图片描述

加入长度后成功

在这里插入图片描述

4.编写存储过程

在这里插入图片描述

CREATE DEFINER=`root`@`localhost` PROCEDURE `proc_param`(IN `name` VARCHAR ( 20 ),OUT auth VARCHAR ( 20 ))
BEGIN-- 	SELECT * FROM book_tab WHERE book_title LIKE name;SELECTSUBSTRING_INDEX( book_author, ',', 1 ) INTO auth FROMbook_tab WHEREbook_title LIKE NAME;END

作用,取到第一作者

在这里插入图片描述

5.查询中调用存储过程

在这里插入图片描述

CALL proc_param('%中国人的性格%',@auth);
SELECT @auth

MybatisPlus使用存储过程

1.新建存储过程

在这里插入图片描述

CREATE DEFINER=`root`@`localhost` PROCEDURE `findBookProc`()
BEGINSELECT* FROMbook_tab;END

2.注解调用存储过程

在这里插入图片描述

package com.tianju.bm.dao;import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.tianju.bm.domain.entity.Book;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Options;
import org.apache.ibatis.annotations.Select;
import org.apache.ibatis.mapping.StatementType;import java.util.List;
import java.util.Map;@Mapper
public interface BookMapper extends BaseMapper<Book> {/*** 存储过程全查询* @param map* @return*/@Select({"call book_db.findBookProc()"})@Options(statementType = StatementType.CALLABLE)List<Book> findAllProc(Map<String,Book> map);
}

3.运行时间对比

在这里插入图片描述


总结

1.介绍存储过程 (store procedure);
2.分析其应用领域;
3.Navicat中使用MySQL的存储过程;
结合Mybatis-Plus使用存储过程;

http://www.zhongyajixie.com/news/47257.html

相关文章:

  • 网站页面设计如何收费百度推广官网入口
  • wordpress 移动端适配hyein seo是什么牌子
  • 网站制作网站搭建百度竞价推广账户
  • 政府网站构建与维护南京网站快速排名提升
  • 一个用户注册的网站怎么做seo没什么作用了
  • 济南网站建设方案托管可以发外链的论坛有哪些
  • web网页代码seo优化系统
  • 购物网站模板 php网站设计公司排名
  • 深圳做棋牌网站建设广告优化师前景怎样
  • 前端做图表的网站补肾壮阳吃什么药效果好
  • 做外贸一般总浏览的网站进入百度
  • 网站开发相关参考文献资料百度快照推广排名
  • 武进网站建设百度引擎搜索推广
  • 概念产品设计网站企业推广策划
  • 企业网站关键词排名 s每日新闻摘要30条
  • wordpress 技术分享主题网络优化工程师主要做什么
  • 合肥做网站做推广汕头百度网站推广
  • 网站建设疑问中国三大搜索引擎
  • 做网站系统学校快速优化网站排名的方法
  • 网站模板集合常州网站优化
  • 临翔网站建设策划推广活动方案
  • wordpress网站开发爱站网长尾关键词挖掘查询工具
  • 帮人做网站收费合法吗百度权重域名
  • 网站注册页面怎么做百度网盘在线登录
  • 我的网站dede山东网络推广优化排名
  • 男男做爰视频网站杭州百度推广
  • 记账凭证做网站摘要怎么写在线代理浏览网站免费
  • 特价做网站婚恋网站排名前十名
  • 武汉互联网企业搜seo
  • 中山古镇做网站国内最新十大新闻