1.不能使用return;

2.Delimiter //(分割符声明,没声明默认为分号(;))

3.在procedure外没法用declare,声明变量直接用 @变量名;

4.要显示字符串,直接使用select语句;

Delimiter //
Drop procedure if exists Disp_Student;create procedure Disp_Student(in nSNO char(20), out SUM_CREDIT numeric(5,0), out AVG_GRADE numeric(5,0))
begin
select *
from Students
where Students.SNO=nSNO;select avg(Grade) into AVG_GRADE
from SC natural join Courses
where SNO=nSNO and Credit>3;select sum(Credit) into SUM_CREDIT
from SC natural join Courses
where SNO=nSNO;
end
//call Disp_Student('201130580497',@sum_credit ,@avg_grade );
select @avg_grade,@sum_credit;

5. 视图不被允许在procedure中进行修改(alter),即使是temporary table......=。=

6.在procedure中对变量直接进行赋值,用set语句。

delimiter //drop procedure if exists CAL_GPA;
create procedure  CAL_GPA(in nSNO char(20), out GPA numeric(5,2) )begin
declare SUM_CREDIT numeric(5,0);
declare SUM_GPC numeric(5,0);create temporary table if not exists temp(CREDIT numeric(5,2), Grade numeric(5,2),GPC numeric(5,2));insert into temp
select Credit,Grade,NULL
from SC natural join Courses
where SNO=nSNO ;select sum(Credit) into SUM_CREDIT
from temp;update temp
set GPC=4*Credit
where Grade>=85;update  temp
set GPC=3*Credit
where Grade>=75 and Grade<85;update  temp
set GPC=2*Credit
where Grade>=60 and Grade<75;update  temp
set GPC=1*Credit
where Grade<60;select sum(GPC) into SUM_GPC
from temp;set GPA=SUM_GPC/SUM_CREDIT;drop temporary table if exists temp;
end
//call CAL_GPA('201130580497',@GPA);
select @GPA;

View Code

7.查看procedure使用

show procedure status;

转载于:https://www.cnblogs.com/alex-wood/archive/2013/05/20/3087919.html

MySQL 5.5.31 procedure 的语法规则细节相关推荐

  1. 第二章 疯狂Caché 语法规则

    文章目录 第二章 Caché 语法规则 区分大小写 标识符 Unicode 空格 注释 例程和方法的int代码中的注释 例程和方法的MAC代码中的注释 方法代码之外的类定义中的注释 文字值 字符串文字 ...

  2. MYSQL中,CAST函数的使用规则以及convert对比

    MYSQL中,CAST函数的使用规则 CAST函数语法规则是:Cast(字段名 as 转换的类型 ),其中类型可以为: CHAR[(N)] 字符型 DATE 日期型 DATETIME 日期和时间型 D ...

  3. ES6语法规则之解构

    解构:使用ES6的一种语法规则,将一个对象或数组的某个属性提取到某个变量中称为解构,并且解构不会对被解构的目标造成任何影响 首先给出一个对象用作解构 const user = {name: 'jwh' ...

  4. MySQL常用操作之创建存储过程语法详解

    MySQL常用操作之创建存储过程语法详解 前言 简介 语法 创建结构 变量结构 入参变量和出参变量 流程控制 判断(IF 语句) 判断(CASE 语句) 循环(LOOP 语句) 循环(WHILE 语句 ...

  5. Crontab语法规则格式、使用方式及日志查看

    在Linux系统我们会常用crontab来设置一些定时执行的脚本和代码. 一.crontab的语法规则 crontab的语法规则格式: 代表意义    分钟      小时    日期      月份 ...

  6. ASN.1笔记——语法规则与类型概述

    学习资料:ASN.1编码规则详解 一.简介 ASN.1(Abstract Syntax Notation dotone),抽象语法标记1.是定义抽象数据类型形式的标准,是用于描述数据表示.表示.传输. ...

  7. mysql存储过程 alter_MYSQL alter procedure alter function 它们只可以更改过程的特性,不可以更改过程的逻辑。...

    例子: delimiter // create procedure proc_a(in numberA int) 这样create procedure 是正确的 begin select number ...

  8. MySQL讲义第 31 讲—— DML 语句与 select 查询

    MySQL讲义第 31 讲-- DML 语句与 select 查询 文章目录 MySQL讲义第 31 讲-- DML 语句与 select 查询 一. INSERT ... SELECT 语句 二.D ...

  9. MySQL 5.7.31 安装教程

    前言 MySQL 5.7.31 是5.x系列最后一版 支持全平台(包含 MacOS)的版本 下载 1.首先下载安装支持包 vc_redist.x64.exe 安装完重启使包生效 2.选择你需要的 My ...

  10. LLVM一些语法规则

    LLVM一些语法规则 LLVM文档 LLVM编译器基础架构支持广泛的项目,从工业强度编译器到专门的JIT应用程序,再到小型研究项目. 同样,文档分为几个针对不同受众的高级别分组: LLVM设计概述 几 ...

最新文章

  1. Maven实战系列文章目录
  2. 编写一段代码,实现在控制台输入一组数据后,排序后再控制台输出
  3. 【通信原理】【实验】实验二:数字基带传输实验(GZHU)
  4. AIX 系统中 PVID 的含义与作用
  5. 图片优化_Web 性能优化: 图片优化让网站大小减少 62%
  6. 热血街头Java,下载_我爱法语 V3.01 多国语言版_6z6z下载站
  7. hal库开启中断关中断_STM32对HAL库的定时器中断
  8. C++学习之路 | PTA乙级—— 1019 数字黑洞 (20分)(精简)
  9. C++对象模型3--无重写的单继承
  10. 教你七招记单词快又准
  11. 10年外贸人工具:邮件群发软件工具哪个好?
  12. 家用电脑如何安装服务器系统,普通电脑安装服务器系统
  13. python grad_torch.autograd.grad()函数用法示例
  14. win10计算机打印机共享怎么设置方法,Win10系统怎么设置打印机共享?Win10系统打印机共享设置教程...
  15. 小京鱼京东智能服务平台
  16. 50条有趣的Python一行代码
  17. Github上开源项目readme里好看的高大上的有趣的徽章从何而来
  18. Caffeine入门
  19. 海外加速,让你拥有和 Steam 一样的高速下载
  20. VS 2019 MFC Edit Control控件自绘带软键盘

热门文章

  1. 卷积神经网络 第三周作业:Residual+Networks+-+v1
  2. 别样的唐诗宋词汇——基于Python的量化分析挖掘尝试
  3. Keras中的时间分布层TimeDistributed Layer使用教程
  4. Pyspark学习入门二:sort排序学习
  5. java8 json转xml,在Java中将JSON转换为XML
  6. Hyperledger Fabric 架构 处理交易流程 账本
  7. kubernetes视频教程笔记 (24)-存储-PV和PVC
  8. php socket邮箱,phpsocket.io php版本的socket.io
  9. mysql的执行局计划
  10. 学计算机的银行从业人员,银行从业人员继续教育