使用sql也可以像java一样进行程序编写,说到编程,就离不开变量和流程控制,接下来介绍一下

变量

sql中的变量可分为系统变量和自定义变量

系统变量 用于控制服务器表现的变量
查看所有系统变量 show global  variables [like '%关键字%']; -- 查看全局变量
show session variables [like '%关键字%']; -- 查看会话变量
查看具体变量值 select @@变量名
修改全局级别变量 set global 变量名 = 值;
修改会话级别变量 set 变量名 = 值;或者 set @@变量名 = 值
自定义变量 会话变量 相当于一个自定义的全局变量,可以在存储过程、函数和触发器之外或之内使用
普通变量 相当于一个局部变量,只能在在存储过程、函数和触发器中使用
会话变量 可以在存储过程、函数和触发器之外或之内使用
定义

set @变量名 = 值 或者 set @变量名 := 值

(建议使用:= ,myslq中=有的时候表示比较)

另外就是会话变量名都必须以@开头

实例 直接赋值

set @v_name =  'chaizpeng';

-- 查看变量值

select 变量名

查询赋值

-- 边查询边赋值,变量值是最后一条记录的值

select @czp_name := name from user;

-- 必须只返回一条记录

select name from user where id = 4 into @czp_name;

普通变量 相当于局部变量,只能在存储过程、函数和触发器中使用
定义

-- 和创建表时声明每一个字段格式差不多

declare 变量名 类型

实例 这里先不写实例,因为存储过程或者函数还没有说,后续在函数或者过程的实例中会有体现

上边对变量做了详细的描述,接下来说一下流程控制,sql编程中的流程控制和java一样,有3种,分别是顺序流程、循环流程、条件流程。接下来详细说一下(顺序流程不介绍)

条件流程(分支结构)

sql中实现分支结构的方式有:if结构、case结构

if结构 条件判断,类似于java中的if判断
语法

-- 语句以if开头,end if; 结尾

-- 判断完条件,要是用then来表示要执行符合条件的代码

if  判断条件 then 执行代码

elseif 判断条件 then 执行代码

else 执行代码

end if;

case结构 条件判断,类似于java中的case判断
语法 case 变量
when 值 then 满足条件代码;
when 值 then 满足条件代码;
else 其他代码;
end;

 循环流程(循环结构)

sql中实现循环结构的方式有:loop循环、while循环、repeat循环

loop循环 循环控制,一般使用条件来结束循环
语法

标签名:loop

循环执行的代码

if 条件 then
      leave 标签名  -- 退出循环

end if;
end loop;

while循环 sql只有while..do结构
语法

while 条件 do

循环执行的代码

end while;

repeat循环  
语法 repeat
      循环执行的代码
until 条件 end repeat;

在这里只介绍一下语法的使用,不给出使用的实例,因为没有什么意义,之后会在存储过程或者函数中给出实例

15、sql编程基本语法介绍相关推荐

  1. sql和mysql语法_SQL 与MySQL-基本语法介绍

    MySQL-基本语法介绍 简单说:msyql 就是一个仓库, sql就是如何从仓库取(查询.更改)东西,它们是一个组合,在一起亲密合作,缺一不合: MySQL 基本语法介绍 1. 什么是SQL SQL ...

  2. Java基础编程——基础语法及介绍

    Java基础编程--基础语法及介绍 介绍 Java是由Sun Microsystems公司于1995年5月推出的Java面向对象程序设计语言和Java平台的总称.由James Gosling和同事们共 ...

  3. ORACLE PL/SQL编程之六:把过程与函数说透(穷追猛打,把根儿都拔起!)

    原文:ORACLE PL/SQL编程之六:把过程与函数说透(穷追猛打,把根儿都拔起!) ORACLE PL/SQL编程之六: 把过程与函数说透(穷追猛打,把根儿都拔起!)   继上篇:ORACLE P ...

  4. [顶]ORACLE PL/SQL编程详解之二:PL/SQL块结构和组成元素(为山九仞,岂一日之功)...

    [顶]ORACLE PL/SQL编程详解之二:PL/SQL块结构和组成元素(为山九仞,岂一日之功) 原文:[顶]ORACLE PL/SQL编程详解之二:PL/SQL块结构和组成元素(为山九仞,岂一日之 ...

  5. Oracle PL/SQL编程详解

    Oracle PL/SQL编程详解 - 古立 - 博客园 <我的网络摘抄本> 网摘/转载/备忘/随记 博客园 首页 新随笔 联系 管理 订阅 随笔- 84  文章- 0  评论- 0  & ...

  6. Oracle学习笔记(最重要的是PL/SQL编程)

    一:Oracle认证,与其它数据库比较,安装 Oracle安装会自动的生成sys用户和system用户: (1) sys用户是超级用户,具有最高权限,具有sysdba角色,有create databa ...

  7. ORACLE PL/SQL编程详解之二:PL/SQL块结构和组成元素(为山九仞,岂一日之功)

    [顶]ORACLE PL/SQL编程详解之二: PL/SQL块结构和组成元素(为山九仞,岂一日之功) 继上四篇:ORACLE PL/SQL编程之八:把触发器说透                ORAC ...

  8. [顶]ORACLE PL/SQL编程详解之二:PL/SQL块结构和组成元素(为山九仞,岂一日之功)

    [顶]ORACLE PL/SQL编程详解之二: PL/SQL块结构和组成元素(为山九仞,岂一日之功) 继上四篇:ORACLE PL/SQL编程之八:把触发器说透                ORAC ...

  9. ORACLE PL/SQL编程--PL/SQL块结构和组成元素

      本篇主要内容如下: 2.1   PL/SQL块 2.2   PL/SQL结构 2.3   标识符 2.4   PL/SQL 变量类型 2.4.1  变量类型 2.4.2  复合类型 2.4.2.1 ...

最新文章

  1. 构建更好的敏捷项目管理组织所需的4种工具
  2. 16个实用终端命令CLI
  3. linux下mysql的root密码忘记解决方
  4. C# 公共控件及程序制作流程
  5. 算法导论之概率分析和随机算法
  6. sql语句-linq语言-lambda表达式对照
  7. Jedis对redis分布式锁的操作(设置过期时间,UUID,LUA脚本)
  8. java keytool证书cer,keytool 生成cer证书
  9. 05JavaScript输出
  10. IMDB 电影评论情感分类数据集
  11. win7 iis php mysql_windows7和iis配置的php phpinfo()中没有mysql组件
  12. led屏背后线路安装图解_科普:网格屏是什么意思?LED网格屏怎么安装
  13. 安卓手机如何查看手机控制台输出
  14. Node.js概述及编程基础
  15. 交换机基本介绍(分类、性能指标、硬件构成及工作方式)
  16. 为什么要限制兑换外汇额度?
  17. centos7重新调整分区大小
  18. 浅谈企业文化的重要性,搭档之家有话说
  19. 番茄(Tomato),别名西红柿
  20. 一键视频爬虫下载神器,广告还没加载就下载完了

热门文章

  1. mysql group where_[MySQL] 测试where group by order by的索引问题
  2. threejs 加载两个场景_threejs中的三维场景操作
  3. python量化常用_Python量化常用函数
  4. 栈在前端中的应用,顺便再了解下深拷贝和浅拷贝!
  5. [Java基础]复制文件的异常处理try...catch...finally的做法
  6. akb48_AKB48里历史——六年的终结
  7. dedemodule.class.php,DEDECMS5.7模块/模块管理列表显示空白问题解决方法
  8. python练习题:列表排序
  9. E:Three Blocks Palindrome(hard and easy)(树状数组 ? 前缀和?)
  10. P4245 【模板】任意模数多项式乘法