当前位置:网站首页>GBASE 8s自定义存储过程和函数介绍
GBASE 8s自定义存储过程和函数介绍
2022-07-29 21:18:00 【八珍豆腐】
存储过程(Stored Procedure)是一组已经事先编译好、能完成特定功能的 SQL 语句集合,是一个独立的数据库对象。存储过程类似于高级语言中的函数,可被用户的应用程序调用、执行。不同的是,存储过程经过编译后存放在服务器端,这为开发 C/S(客户端/服务器)和 B/S(浏览器/服务器)应用程序提供了强有力的支持。由于存储过程是已经编译好的代码,所以执行时不必再次进行编译,从而提高了程序的执行效率。
SPL(Stored Procedure Language)是在 GBase 8s 中提供的一种流程控制(分支和循环)的 SQL,是 GBase 8s 对标准 SQL 的扩充,用于编写存储过程。GBase 8s 中的存储过程包括 SPL 过程(没有返回值)和 SPL 函数(有返回值)。存储过程将在创建时被解析和优化,它以可执行的方式保存在 system catalog 表中。
存储过程的优点
1) 模块化
类似于高级语言中的函数,存储过程一旦建立就可由不同用户利用 SPL 编写的程序调用,使代码的复用性提高,减少代码量。
2) 提高性能
存储过程在创建时就进行了编译并存储在服务器中,以后对它的任何调用都不需再进行编译。因此存储过程的这种一次编译、多次执行的特点大大提高了程序执行的速度及性能。
3) 减少网络流量
存储过程经过编译存储于服务器,数据的处理和操作均在服务器端进行。调用时只需将存储过程的名称以及参数传递给服务器,不用每次访问都传递很长的 SPL 语句段,从而降低了网络传输的开销。
4) 提高安全性
存储过程可以提高应用程序的安全性。参数化的存储过程有助于保护应用程序不受SQL 注入(SQL Injection)攻击,此外还可以设定某些用户具有对指定存储过程的使用权限,保障数据库安全。
边栏推荐
- 系列(jupyter自动保存失败)
- 24小时伦敦金走势图分析
- sizeof和strlen的区别(strlen和sizeof的用法)
- leetcode122. Best Time to Buy and Sell Stock II
- LeetCode 593 有效的正方形[数学] HERODING的LeetCode之路
- Come in now!!!Take you to know the basic data types of C language
- 使用脚本安装mysql
- The demand for VR live broadcast marketing is increasing, and the data module is paving the way for us
- bright day
- 【HDLBits 刷题】Verilog Language(4)Procedures 和 More Verilog Features 部分
猜你喜欢
随机推荐
VSCode 插件大全
Docker 下 Oracle 安装与配置
leetcode122. Best Time to Buy and Sell Stock II
The Ministry of Human Resources and Social Security announced that "database operation administrator" has become a new occupation, and OceanBase participated in the formulation of occupational standar
一文理解分布式开发中的服务治理
三品牌下半年将带来多款新品,东风日产将迎来“产品大潮”
TCP协议详解
微信小程序 31 分包机制
MySQL Data Query - Simple Query
Chrome浏览器打印flash log
WeChat Mini Program 31 Subcontracting Mechanism
Official announcement!Suzhou Wujiang Development Zone launches electronic labor contract platform
install mysql using script
MySQL Data Query - Union Query
【Verilog】Verilog设计进阶
网安学习-内网渗透2
Analysis of Crypto in Pi 2
PyQt5学习一(环境搭建)
sizeof和strlen的区别(strlen和sizeof的用法)
linux install redis using script

![[ACTF2020 Freshman Competition]Exec 1](/img/1e/a3c19d514207e6965d09c66b86e519.png)






