SQL入门笔记(1)
来源:互联网 发布:fifaonline3数据库下载 编辑:程序博客网 时间:2024/05/16 14:53
储存过程
增删改查+储存,听说这些做好后,好歹算是入门了。不知不觉自己都开始学习储存了,心中不禁一阵翻滚。
废话结束,开始回顾
储存过程:
储存过程有三中模式:
IN模式
OUT模式
INOUT模式
1.IN的模式
举个栗子___
- DELIMITER $$ # 定界符
- CREATE PROCEDURE user_main_pro1(IN v_id INT)
- BEGIN
- #定义变量
- DECLARE v_userName VARCHAR(50);
- #通过select...into...给变量赋值
- SELECT f_userName INTO v_userName FROM t_user_main WHERE f_userId = v_id;
- #执行DDL语句
- INSERT INTO t_user_main (f_userName) VALUES (v_userName);
- END $$ #存储过程创建结束
- DELIMITER; #恢复mysql分号定界符
其中# ~ 表示的是注释,注释是一个非常好的习惯,还可以将#替代成--
小结:IN:不管内部储存过程pin(某个变量variables)是什么值,一旦参数在外部设定为@pin=X,那么最后pin的值就会变成X,而不会因为存储过程内容设置pin=y而返回y值
2.OUT的模式
举个栗子___
- DELIMITER $$
- CREATE PROCEDURE user_main_pro2(OUT v_count INT)
- BEGIN
- SELECT COUNT(*) INTO v_count FROM t_user_main;
- END $$
- DELIMITER
OUT:不管外部储存过程pin(某个变量variables)是什么值,一旦参数在内部设定为@pin=y,那么最后pin的值就会变成y(储存过程中设置的值),而不会因为外部指定设置pin=x而返回y值
3.OUTIN模式
无栗子,
自己的理解:INOUT就是IN+OUT,然而这样的结果是最后相当于一个翻版,能够读取玩不文件的翻版而已。目测需要继续深入学习。
为了深入理解IN/OUT/INOUT的定义,先理解下面的内容:
理解:
语法
CREATEFUNCTION 函数名(参数列表) RETURNS 数据类型
或者(CREAT PRECEDURE 储存过程名(IN/OUT/INOUT 参数 数据类型)
begin
# 函数体
# 返回值
end
//
CALL 储存过程名(@参数)
返回值是在储存过程的内部,//以前都是在储存,CALL开始调用
外部变量? (全局变量)内部变量?(局部变量)
全局变量保存在内存的全局存储区中,占用静态的存储单元;局部变量保存在栈中,只有在所在函数被调用时才动态地为变量分配存储单元。
(1)栈(stack):由编译器进行管理,自动分配和释放,存放函数调用过程中的各种参数、局部变量、返回值以及函数返回地址。操作方式类似数据结构中的栈。
(2)全局(静态)存储区:分为DATA段和BSS段。DATA段(全局初始化区)存放初始化的全局变量和静态变量;BSS段(全局未初始化区)存放未初始化的全局变量和静态变量。程序运行结束时自动释放。其中BBS段在程序执行之前会被系统自动清0,所以未初始化的全局变量和静态变量在程序执行之前已经为0。
理解关键词对于理解整个储存过程,以及句子的语法结构有十分重要的意义。不懂行业内对应的关键词就如同:
SELECT you_study_process From you's study
#输出结果
'摸着石头过河的瞎子0.0'
阅读全文
0 0
- SQL入门笔记(1)
- SQL入门学习笔记(1)
- SQL入门笔记(一)
- SQL SERVER学习笔记(入门篇)
- SQL入门笔记
- SQL 入门笔记
- SQL 入门笔记
- (SQL入门经典+SQL必知必会+视频)笔记之一
- SQL Server 入门笔记(一)
- SQL Server 入门笔记(二)
- SQL入门经典前两节笔记
- 《SQL入门经典》学习笔记
- SQL入门学习笔记1.0
- SQL入门学习笔记3.0
- SQL重入门(1)
- Mysql入门笔记(1): python——SQL基本使用
- SQL Server 2005 ReportingService 入门笔记 (一)
- SQL Server 2005 ReportingService 入门笔记 (二)
- MySQL卸载
- 常见的目标检测中的背景建模方法漫谈
- jstring to char*
- 自定义拦截器,封装公共参数
- 用tensorflow实现VGG网络,训练mnist数据集
- SQL入门笔记(1)
- 移动Web开发基础-比例盒子
- 深刻理解HDFS工作机制
- [VIJOS1250]最勇敢的机器人
- 线上云服务器以及用户创建
- 移动开发UI设计尺寸规范
- Spark独到见解--Action算子总结
- 垃圾佬抓宠物 Kruscal
- js 字符串替换数组元素一 一对应