当前位置:网站首页>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)攻击,此外还可以设定某些用户具有对指定存储过程的使用权限,保障数据库安全。
边栏推荐
- qt中qstring合并字符串
- Second Best PyTorch Beginner Course; Thesis Writing Guide; Using µGo to Develop a Mini Compiler; Super Efficient Use of Transformer's Extension Library; Frontier Papers | ShowMeAI News Daily
- 南华早报 | 助力亚洲最具公信力报章实现AD域自动化管理
- Cobaltstrike and BurpSuite desktop shortcut configuration
- 解释器模式
- 336. Palindromic Pairs
- The sword refers to Offer II 097. Number of subsequences
- 微信小程序如何开通支付功能?
- 方法的传递
- 【ORM框架:Sequelize的查询】
猜你喜欢

华为畅享50 Pro评测:HarmonyOS加持 更流畅更安全

笔记:fgets函数详解

写出优雅的Kotlin代码:聊聊我认为的 “Kotlinic“

一文理解分布式开发中的服务治理

【AD】【持续更新ing】关于AD设计过程中一些小细节
![[ACTF2020 Freshman Competition]Exec 1](/img/1e/a3c19d514207e6965d09c66b86e519.png)
[ACTF2020 Freshman Competition]Exec 1

5V升压充电8.4V芯片

HMS Core audio editing service audio source separation and spatial audio rendering, helping to quickly enter the world of 3D audio

An article to understand service governance in distributed development

Verilog 加法器设计
随机推荐
第3章业务功能开发(线索关联市场活动,插入数据并查询)
微信小程序如何开通支付功能?
WeChat Mini Program 31 Subcontracting Mechanism
Numpy数组处理(二)
24小时伦敦金走势图分析
Second Best PyTorch Beginner Course; Thesis Writing Guide; Using µGo to Develop a Mini Compiler; Super Efficient Use of Transformer's Extension Library; Frontier Papers | ShowMeAI News Daily
数字孪生万物可视 | 联接现实世界与数字空间
Liu Genghong, boys and girls, come here!Sports data analysis and mining!(with a full set of code and data sets)
PyQt5学习一(环境搭建)
【Verilog】Verilog设计进阶
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
940. Different subsequences II
在Ferora35中安装oracle-database-xe-21c
一文理解分布式开发中的服务治理
南华早报 | 助力亚洲最具公信力报章实现AD域自动化管理
Numpy array processing (2)
Docker 下 Oracle 安装与配置
C语言操作符详解(1)
240. Searching 2D Matrix II
5V升压充电8.4V芯片