SQl编程存储过程
过程化存储
存储过程,一组为完成特定功能、经过编译后存储在数据库中的SQL语序集
灵活性:存储过程中可以进行流程控制和循环操作来完成复杂的判断和运算
一致性:通过存储过程可以使一些关联的操作一起发生,从而维护了数据库的完整性
- 高效性:存储过程有效减少了数据库开发人员和程序员的工作量
语法
CREATE PROCEDURE SP_NAME(IN PRAM TYPE, OUT PRAM TYPE);
IN 表示传入参数 默认不写时表示传入 TYPE 表示类型
OUT 表示传出参数 TYPE表示类型
INOUT 可以使一个传入参数在存储过程中被修改 并传出
存储过程内部语句以”;”结尾,因此在定义存储过程中需要切换控制台的命令结束符号 以避免歧义,可以使用DELIMITER //
- 调用
调用存储过程使用 CALL SP_NAME()
删除存储过程 DROP PROCEDURE SP_NAME
查看已定义存储过程 SHOW PROCEDURE STATUS/SHOW CREATE PROCEDURE SP_NAME(详细信息)
- 创建数据库
`create database if not exists demo1 default character set 'utf8';`
- 创建数据表
CREATE TABLE `user` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`name` varchar(32) DEFAULT NULL,
PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8
- 定义结束符号
-- 定义 结束符
DELIMETER $$
- 函数无参数
`CREATE PROCEDURE loop_insert_post()
BEGIN
DECLARE i INT;
SET i = 1;
WHILE i<1000 DO
INSERT INTO user(`name`,`addtime`)values(concat('JM',i),now());
SET i = i+1;
END WHILE;
END $$`
- 调用函数
-- 调用函数
CALL loop_insert_post //
- 恢复mysql 默认结束符
DELIMETER ;
SQl编程存储过程的更多相关文章
- sql编程 && 存储过程
sql 结构化查询语言 是一种编程语言 用于管理数据库的编程语言 元素: 数据 数据类型 变量的数据类型 就是字段的数据类型 变 ...
- PL/SQL编程—存储过程
SQL> create or replace procedure sp_pro3(name_in varchar2,id_in varchar2) is begin update mytest ...
- 基于oracle 的PL/SQL编程 - 存储过程
接上篇,游标使用的语句,相当于一段匿名的函数,窗口关闭了就不存在了.如果想要窗口关闭了,还能继续执行那段代码,就需要存储过程了: PLSQL是指一个个PLSQL的业务处理过程存储起来进行复用,这些被存 ...
- sqL编程篇(三) 游标与存储过程
sql编程2 游标与存储过程 sql编程中的游标的使用:提供的一种对查询的结果集进行逐行处理的一种方式不用游标的处理解决方式:逐行修改工资update salar set 工资=‘新工资’ where ...
- Oracle学习2 视图 索引 sql编程 游标 存储过程 存储函数 触发器
---视图 ---视图的概念:视图就是提供一个查询的窗口,来操作数据库中的数据,不存储数据,数据在表中. ---一个由查询语句定义的虚拟表. ---查询语句创建表 create table emp a ...
- SQL Server 存储过程
Transact-SQL中的存储过程,非常类似于Java语言中的方法,它可以重复调用.当存储过程执行一次后,可以将语句缓存中,这样下次执行的时候直接使用缓存中的语句.这样就可以提高存储过程的性能. Ø ...
- [转]SQL Server 存储过程 一些常用用法(事物、异常捕捉、循环)
最新更新请访问: http://denghejun.github.io Transact-SQL中的存储过程,非常类似于Java语言中的方法,它可以重复调用.当存储过程执行一次后,可以将语句缓存中 ...
- java 调用 sql server存储过程
Transact-SQL中的存储过程,非常类似于Java语言中的方法,它可以重复调用.当存储过程执行一次后,可以将语句缓存中,这样下次执行的时候直接使用缓存中的语句.这样就可以提高存储过程的性能. Ø ...
- sql编程小结
对照mysql5.1手册,对这几天学的sql编程进行小结,主要涉及触发器.存储过程.权限管理.主从分离等,权当抛砖引玉,高手请略过. 一.触发器 通俗的说就是在指定的数据表增删改的前或后触发执行特定的 ...
随机推荐
- Cassandra使用的各种策略
1. 背景介绍 Cassandra 使用分布式哈希表(DHT)来确定存储某一个数据对象的节点.在 DHT 里面,负责存储的节点以及数据对象都被分配一个 token.token 只能在一定的范围内取值, ...
- My97DatePicker时间控件使用方法
引入css及js <asp:TextBox ID="tb_startTime" runat="server" CssClass="Wdate&q ...
- postman测试接口
一.postman安装 不介绍.可百度搜索.安装完成后如下: 二.postman测试接口 get请求: post请求:请求参数如果是json格式,则如下 上传文件:如果接口中要求上传文件,可如下操作 ...
- 【原创】解BUG-xenomai内核与linux内核时间子系统之间存在漂移
版权声明:本文为本文为博主原创文章,转载请注明出处.如有问题,欢迎指正.博客地址:https://www.cnblogs.com/wsg1100/ 一.问题起源 何为漂移?举个例子两颗32.768kH ...
- sql注入 --显错注入
前提知识 数据库:就是将大量数据把保存起来,通过计算机加工而成的可以高效访问数据库的数据集合数据库结构:库:就是一堆表组成的数据集合表:类似 Excel,由行和列组成的二维表字段:表中的列称为字段记录 ...
- [HDU2577]How to Type(DP)
题目链接 题意 给一个大小写字符串,求最少敲击字符串次数,最开始和最后要求shift都是down的.如日常,大小写转换可以ctrl+z或者shift保持 up/down. 题解 两个dp数组,一个表示 ...
- 腾讯会议大规模使用Kubernetes的技术实践
腾讯会议,一款提供灵活协作的线上会议解决方案.其中大量的模块是有状态服务,在使用Kubernetes为其进行容器化部署时,Pod升级需保持共享内存.长连接服务.升级时只容忍ms级抖动,需提供大规模分批 ...
- JVM强引用、软引用、弱引用、虚引用、终结器引用垃圾回收行为总结
JVM引用 我们希望能描述这样一类对象: 当内存空间还足够时,则能保留在内存中:如果内存空间在进行垃圾收集后还是很紧张,则可以抛弃这些对象. -[既偏门又非常高频的面试题]强引用.软引用.弱引用.虚引 ...
- java执行器
Executor 执行已提交的 Runnable 任务对象.此接口提供一种将任务提交与每个任务将如何运行的机制(包括线程使用的细节.调度等)分离开来的方法.Executor 接口并没有严格地要求执行是 ...
- vue中父子组件传值问题 通过props 和 $emit()方法
(代码在最后) 1.父组件给子组件传值直接通过props,听着很简单,但是对于初学者来说还是比较难以理解的,今天小白通过自己的实践操作结合代码分析一下 案例 把模态框单独的抽离出来,当作一个组件 第 ...