【计算机三级-数据库技术】数据库后台编程技术
内容提要
1、掌握存储过程的定义与使用
2、掌握用户定义函数的创建与使用
3、掌握触发器的定义与使用
4、掌握游标的定义与使用
第一节 存储过程
使用T-SQL语言编写,有两种方式存储:
- 在客户端存储代码通过客户端程序或SQL命令向DBMS发出操作请求,由DBMS将结果返回给用户程序。
- 以子程序的形式将程序模块存储在数据库中,供有权限的用户通过调用反复执行。
存储过程:即存储在数据库中供所有用户程序调用的子程序。

用户自定义存储过程是由用户创建并能完成某特定功能(如查询用户所需数据信息)的存储过程。本节将详细介绍用户自定义的存储过程。


2、创建、执行和删除存储过程
存储过程定义包含两个主要组成部分:
①过程名称及其参数的说明
②过程的主体(其中包含执行过程操作的Transact-SQL语句)。
创建存储过程的语法格式如下:

执行存储过程:


删除存储过程:

第二节 用户自定义函数
- 用户定义函数:
类似于编程语言中的函数,其结构与存储过程类似,但函数必须有一个RETURN子句,用于返回函数值。 - 两类用户定义函数:
标量函数和表值函数。前者返回单个数据值,表值函数返回一个表。





第三节 触发器
1、基本概念
触发器:特殊存储过程,在对表中的数据进行
UPDATE、INSERT、DELETE操作时自动触发执行,
常用于保证业务规呗则和数据完整性,增强数据完整性约束能力。
- SQL Server2008支持三种类型的触发器:
DML、DDL、登录触发器。
对于更新操作的触发器:
更新 :
①删除原数据
②插入新数据
适用场合
- 完成比CHECK(只能实现同一表列之间取值约束)约束更复杂的数据约束。
- 保证数据库性能而维护的非规范化数据。
- 可实现复杂的商业规则。
- 评估数据修改前后的表状态,并采取对策。



第四节 游标
1、游标的组成
游标结果集(SELECT返回结果集)与游标当前行指针(指向结果集中某一行)
特点:
- 定位特定行;
- 从当前位置检索一行或多行;
- 支持当前行数据修改;
- 对修改结果提供不同级别的可见性支持

习题:







相关文章:
【计算机三级-数据库技术】数据库后台编程技术
内容提要 1、掌握存储过程的定义与使用 2、掌握用户定义函数的创建与使用 3、掌握触发器的定义与使用 4、掌握游标的定义与使用 第一节 存储过程 使用T-SQL语言编写,有两种方式存储: 在客户端存储代码通过客户端程序或SQL命令向DBMS发出操作请求&…...
线程的控制
互斥 概念 互斥:在多线程中对临界资源(公共资源)的排他性访问。 互斥机制 >>互斥锁 >>保证临界资源的访问控制。 通过使用互斥锁,可以确保某一时刻只有一个线程能够访问临界资源,从而避免竞争条件(race condition…...
WPS宏实现Sheet页拆分功能
源表格首列名称中一样的分别创建该名称的Sheet页,首先把首列复制导致Sheet2页,根据去重后的值创建新的Sheet页,把源表格数据复制到新建的Sheet页,遍历删除不需要的留下需要的就完成了。 function JIn521() { //设置工作…...
【图像超分】论文精读:AdaBM: On-the-Fly Adaptive Bit Mapping for Image Super-Resolution
第一次来请先看这篇文章:【超分辨率(Super-Resolution)】关于【超分辨率重建】专栏的相关说明,包含专栏简介、专栏亮点、适配人群、相关说明、阅读顺序、超分理解、实现流程、研究方向、论文代码数据集汇总等) 文章目录 前言Abstract1. Introduction2. Related works3. Pr…...
深信服应届生客户经理面试经验分享
吉祥知识星球http://mp.weixin.qq.com/s?__bizMzkwNjY1Mzc0Nw&mid2247485367&idx1&sn837891059c360ad60db7e9ac980a3321&chksmc0e47eebf793f7fdb8fcd7eed8ce29160cf79ba303b59858ba3a6660c6dac536774afb2a6330#rd 《网安面试指南》http://mp.weixin.qq.com/s?…...
什么是应用交付控制器(ADC)
什么是应用交付控制器(ADC) 应用交付控制器(ADC)是一种网络设备,可帮助管理和优化面向最终用户的基于web的应用程序和服务的交付,根据服务器可用性、网络拥塞和用户位置等因素,将传入的web流量…...
旅游管理系统
TOC springboot0748旅游管理系统 第1章 绪论 1.1课题背景 计算机的普及和互联网时代的到来使信息的发布和传播更加方便快捷。用户可以通过计算机上的浏览器访问多个应用系统,从中获取一些可以满足用户需求的管理系统。网站系统有时更像是一个大型“展示平台”&a…...
AVI-Talking——能通过语音生成很自然的 3D 说话面孔
概述 论文地址:https://arxiv.org/pdf/2402.16124v1.pdf 逼真的人脸三维动画在娱乐业中至关重要,包括数字人物动画、电影视觉配音和虚拟化身的创建。以往的研究曾试图建立动态头部姿势与音频节奏之间的关联模型,或使用情感标签或视频剪辑作…...
走进虚拟机逃逸技术之VMware Escape漏洞CVE-2023-20872复现
走进虚拟机逃逸技术之VMware Escape漏洞CVE-2023-20872复现 技术分享 技术分享 起初,为了学习虚拟机逃逸相关技术,也为了搞懂硬件虚拟化。于是请教了某巨佬后告诉我一本书,看完之后为了验证我理解到的硬件虚拟化及虚拟化逃逸原理是否正确&am…...
leetcode118. 杨辉三角,老题又做
leetcode118. 杨辉三角 给定一个非负整数 numRows,生成「杨辉三角」的前 numRows 行。 在「杨辉三角」中,每个数是它左上方和右上方的数的和。 示例 1: 输入: numRows 5 输出: [[1],[1,1],[1,2,1],[1,3,3,1],[1,4,6,4,1]] 示例 2: 输入: numRows 1…...
进程(一)(22)
1.进程是什么 进程是程序执行的过程,会去分配内存资源,cpu的调度。正在运行的程序叫进程。 并发:同一时刻可以同时完成多个任务。 进程: 是操作系统对正在运行的程序的抽象。进程不仅包括程序的代码,还包括程序的执行状态、内存…...
Excel“取消工作表保护”忘记密码并恢复原始密码
文章目录 1.前言2.破解步骤3. 最终效果4.参考文献 1.前言 有时候别人发来的Excel中有些表格不能编辑,提示如下,但是又不知道原始密码 2.破解步骤 1、打开您需要破解保护密码的Excel文件; 2、依次点击菜单栏上的视图—宏----录制宏…...
WPS关闭后,进程依然在后台运行的解决办法
问题 wps启动后 在启动wps后,什么都不做,打开进程管理器,发现居然运行了3个wps进程: win10只会显示wps进程: win11显示比较准确: 关闭后 在关闭wps,再去任务管理器查看,发现在…...
SQL每日一练-0816
今日SQL题:计算每个项目的年度收入增长率 难度系数:🌟☆☆☆☆☆☆☆☆☆ 1、题目要求 计算每个项目每年的收入总额,并计算项目收入环比增长率。找出每年收入增长率最高的项目。输出结果显示年份、项目ID、项目名称、项…...
直方图均衡化
概念 直方图均衡化是图像处理领域中利用图像直方图对对比度进行调整的方法,通过拉伸像素强度分布范围来增强图像对比度。 原理 均衡化指的是把一个分布 (给定的直方图) 映射 到另一个分布 (一个更宽更统一的强度值分布),从而令强度值分布会在整个范围内…...
Golang | Leetcode Golang题解之第342题4的幂
题目: 题解: func isPowerOfFour(n int) bool {return n > 0 && n&(n-1) 0 && n%3 1 }...
数学建模学习(116):全面解析梯度下降算法及其在机器学习中的应用与优化
文章目录 1.梯度下降简介1.1 梯度下降的数学原理1.2 学习率的选择2 梯度下降变体3.梯度下降优化器3.1 动量法(Momentum)3.2 AdaGrad3.3 RMSprop3.4 Adam3.5 Python 使用不同优化器训练线性回归模型4.案例:使用梯度下降优化加利福尼亚房价预测模型4.1. 数据准备4.2. 模型训练…...
[mysql][sql]mysql查询表大小
select table_schema as 数据库, table_name as 表名, table_rows as 记录数, truncate(data_length/1024/1024, 2) as 数据容量(MB), truncate(index_length/1024/1024, 2) as 索引容量(MB) from information_schema.tables where 11 and table_schemadb001 order by table_ro…...
8.16 mysql主从数据库(5.7版本)与python的交互及mycat
mysql数据库基本操作: [rootm ~]# tar -xf mysql-5.7.44-linux-glibc2.12-x86_64.tar.gz 解压压缩包 [rootm ~]# ls anaconda-ks.cfg mysql-5.7.44-linux-glibc2.12-x86_64 mysql-5.7.44-linux-glibc2.12-x86_64.tar.gz [rootm ~]# cp -r mysql-5.7.44-lin…...
项目问题 | CentOS 7停止维护导致yum失效的解决办法
目录 centos停止维护意味着yum相关源伴随失效。 报错: 解决方案:将图中四个文件替换掉/etc/yum.repos.d/目录下同名文件 资源提交在博客头部,博客结尾也提供文件源码内容 CentOS-Base.repo CentOS-SCLo-scl.repo CentOS-SCLo-scl-rh.rep…...
Python爬虫实战:研究feedparser库相关技术
1. 引言 1.1 研究背景与意义 在当今信息爆炸的时代,互联网上存在着海量的信息资源。RSS(Really Simple Syndication)作为一种标准化的信息聚合技术,被广泛用于网站内容的发布和订阅。通过 RSS,用户可以方便地获取网站更新的内容,而无需频繁访问各个网站。 然而,互联网…...
UDP(Echoserver)
网络命令 Ping 命令 检测网络是否连通 使用方法: ping -c 次数 网址ping -c 3 www.baidu.comnetstat 命令 netstat 是一个用来查看网络状态的重要工具. 语法:netstat [选项] 功能:查看网络状态 常用选项: n 拒绝显示别名&#…...
服务器硬防的应用场景都有哪些?
服务器硬防是指一种通过硬件设备层面的安全措施来防御服务器系统受到网络攻击的方式,避免服务器受到各种恶意攻击和网络威胁,那么,服务器硬防通常都会应用在哪些场景当中呢? 硬防服务器中一般会配备入侵检测系统和预防系统&#x…...
Golang dig框架与GraphQL的完美结合
将 Go 的 Dig 依赖注入框架与 GraphQL 结合使用,可以显著提升应用程序的可维护性、可测试性以及灵活性。 Dig 是一个强大的依赖注入容器,能够帮助开发者更好地管理复杂的依赖关系,而 GraphQL 则是一种用于 API 的查询语言,能够提…...
[ICLR 2022]How Much Can CLIP Benefit Vision-and-Language Tasks?
论文网址:pdf 英文是纯手打的!论文原文的summarizing and paraphrasing。可能会出现难以避免的拼写错误和语法错误,若有发现欢迎评论指正!文章偏向于笔记,谨慎食用 目录 1. 心得 2. 论文逐段精读 2.1. Abstract 2…...
Keil 中设置 STM32 Flash 和 RAM 地址详解
文章目录 Keil 中设置 STM32 Flash 和 RAM 地址详解一、Flash 和 RAM 配置界面(Target 选项卡)1. IROM1(用于配置 Flash)2. IRAM1(用于配置 RAM)二、链接器设置界面(Linker 选项卡)1. 勾选“Use Memory Layout from Target Dialog”2. 查看链接器参数(如果没有勾选上面…...
3403. 从盒子中找出字典序最大的字符串 I
3403. 从盒子中找出字典序最大的字符串 I 题目链接:3403. 从盒子中找出字典序最大的字符串 I 代码如下: class Solution { public:string answerString(string word, int numFriends) {if (numFriends 1) {return word;}string res;for (int i 0;i &…...
多模态大语言模型arxiv论文略读(108)
CROME: Cross-Modal Adapters for Efficient Multimodal LLM ➡️ 论文标题:CROME: Cross-Modal Adapters for Efficient Multimodal LLM ➡️ 论文作者:Sayna Ebrahimi, Sercan O. Arik, Tejas Nama, Tomas Pfister ➡️ 研究机构: Google Cloud AI Re…...
浅谈不同二分算法的查找情况
二分算法原理比较简单,但是实际的算法模板却有很多,这一切都源于二分查找问题中的复杂情况和二分算法的边界处理,以下是博主对一些二分算法查找的情况分析。 需要说明的是,以下二分算法都是基于有序序列为升序有序的情况…...
Java面试专项一-准备篇
一、企业简历筛选规则 一般企业的简历筛选流程:首先由HR先筛选一部分简历后,在将简历给到对应的项目负责人后再进行下一步的操作。 HR如何筛选简历 例如:Boss直聘(招聘方平台) 直接按照条件进行筛选 例如:…...
