PL/SQL变量

这篇具有很好参考价值的文章主要介绍了PL/SQL变量。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

目录

-- 语法结构:

-- 声明数值变量

-- 声明字符串变量 

-- 可以给字符串变量赋予数字

-- 通过查询表的数据给变量赋值

-- 其他方式的变量声明类型

%TYPE 引用数据库中的某列的数据类型或某个变量的数据类型

%ROWTYPE 引用数据库中的一行(所有字段)作为数据类型

--常量


-- 语法结构:
DECLARE
-- 声明的地方(变量,常量,游标)
BEGIN
  -- 代码的执行逻辑  
END; 
-- 声明数值变量
DECLARE
  X NUMBER;
  Y NUMBER;
  Z NUMBER;
BEGIN
  X := 6;
  Y := 7;
  Z := X + Y;
  DBMS_OUTPUT.put_line(Z);
END;
-- 声明字符串变量 
DECLARE 
X VARCHAR2(10);
Y VARCHAR2(10);
Z VARCHAR2(10);
BEGIN
 X:='AAA';
 Y:='BBB';
 Z:= X || Y; 
DBMS_OUTPUT.put_line(Z);
END;
-- 可以给字符串变量赋予数字
DECLARE 
X VARCHAR2(10);
Y VARCHAR2(10);
Z VARCHAR2(10);
BEGIN
 X:='&请输入X';
 Y:='&请输入Y';
 Z:= X || Y; 
DBMS_OUTPUT.put_line(Z);
END;
-- 当需要手动传参的时候,赋予 '&' ,即可手动传入参数
-- 通过查询表的数据给变量赋值
SELECT 
字段1,
字段2,
字段3,
...
into 
变量1,
变量2,
变量3 
...
from 表名

例子: --根据输入的员工编号,输出对应员工的姓名,职业,薪资.

DECLARE 
-- 根据需求,定义变量
V_NO NUMBER;        -- 员工编号
V_NAME VARCHAR2(10);-- 员工姓名
V_JOB VARCHAR2(10); -- 员工职业
V_SAL NUMBER;       -- 薪资
BEGIN
  -- 根据需求,定义一个输入的变量
  V_NO:='&请输入一个员工工号';
  
  -- 写 sql 逻辑 将 查询的值 赋予到对应的变量中 
  SELECT 
  E.ENAME,
  E.JOB,
  E.SAL
  INTO V_NAME,V_JOB,V_SAL 
  FROM EMP E
  WHERE E.EMPNO=V_NO;-- 根据传入的员工编号筛选数据
  
-- 输出结果:
DBMS_OUTPUT.put_line('员工姓名:'|| V_NAME);
DBMS_OUTPUT.put_line('员工职业:'|| V_JOB);  
DBMS_OUTPUT.put_line('员工工资:'|| V_SAL);  
  
END;

-- 使用  SELECT INTO 需要注意的点
1.> 使用 SELECT INTO 对变量赋值,查询出来的结果和后面 INTO 的变量,在 (数量),(类型),(顺序)要保持一致.
2.> 数字的列可以放入到字符串的变量中
3.> 变量只能赋予单个值,使用查询赋值时,需要注意返回的行数,必须是一行数据,不能是 0 行,或者多行.

-- 其他方式的变量声明类型
%TYPE 引用数据库中的某列的数据类型或某个变量的数据类型
DECLARE 
V_NO EMP.EMPNO%TYPE; -- 引用 EMP 表中 EMPNO 字段的数据类型
V_JOB EMP.JOB%TYPE; 
BEGIN
SELECT 
E.EMPNO,
E.JOB
INTO
V_NO,V_JOB
FROM EMP E
WHERE EMPNO=7369;
DBMS_OUTPUT.put_line(V_NO || V_JOB);  
END;

%ROWTYPE 引用数据库中的一行(所有字段)作为数据类型
 
DECLARE
V_EMP EMP%ROWTYPE; -- 将 表 EMP 中 一行的数据类型赋予变量
BEGIN
SELECT 
E.EMPNO,
E.ENAME,
E.JOB
INTO 
V_EMP.EMPNO,V_EMP.ENAME,V_EMP.JOB
FROM EMP E  
WHERE EMPNO=7369;
 DBMS_OUTPUT.put_line(V_EMP.EMPNO || V_EMP.ENAME || V_EMP.JOB); 
END;
--常量

常量在声明时赋予初值,并且在运行时,不允许重新赋值
CONSTANT文章来源地址https://www.toymoban.com/news/detail-731217.html

DECLARE
PI CONSTANT NUMBER:=3.1415926;--圆周率
R NUMBER:=3;
AREA NUMBER;
BEGIN
AREA:=PI*R*R;
 
DBMS_OUTPUT.put_line(AREA);
END;

到了这里,关于PL/SQL变量的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 教你如何通过内网穿透轻松实现PL/SQL远程连接Oracle数据库【内网穿透】

    转发自CSDN远程穿透的文章:公网远程连接Oracle数据库【内网穿透】 Oracle,是甲骨文公司的一款关系数据库管理系统,它在数据库领域一直处于领先地位。可以说Oracle数据库系统是世界上流行的关系数据库管理系统,系统可移植性好、使用方便、功能强,适用于各类大、中、

    2024年02月03日
    浏览(56)
  • 异地访问Oracle数据库的解决方案:利用内网穿透实现PL/SQL远程连接的建议与步骤

    ​ 小月糖糖主页 在强者的眼中,没有最好,只有更好。 移动开发领域优质创作者,阿里云专家博主 Oracle,是甲骨文公司的一款关系数据库管理系统,它在数据库领域一直处于领先地位。可以说Oracle数据库系统是世界上流行的关系数据库管理系统,系统可移植性好、使用方便

    2024年02月11日
    浏览(48)
  • PL/SQL变量

    目录 -- 语法结构: -- 声明数值变量 -- 声明字符串变量  -- 可以给字符串变量赋予数字 -- 通过查询表的数据给变量赋值 -- 其他方式的变量声明类型 %TYPE 引用数据库中的某列的数据类型或某个变量的数据类型 %ROWTYPE 引用数据库中的一行(所有字段)作为数据类型 --常量 -- 语法结

    2024年02月07日
    浏览(24)
  • SQL Server 数据库之SQL Server 数据库的安全设置

    数据库服务器是所有应用的数据中转站,若数据库服务被恶意攻击,可能会造成数据泄露、数据丢失、数据被恶意篡改等诸多无法挽回的损失; 所以,对数据库进行安全设置是每一个数据库管理人员都应掌握的知识; SQL Server 登录模式分为 “Windows 身份验证模式” 和 “SQL

    2024年02月06日
    浏览(73)
  • SQL Server数据库使用SQL Server代理实现数据库自动备份

    在现实中,为了保证数据的安全和完整,防止人为错误和硬件故障等造成的数据丢失和损坏,就需要用到数据库的备份,不同的数据库方法有所差别,我这边主讲SQL Server数据库的备份和使用SQL Server代理作业实现数据库的定时备份。 目录 一、开启SQL Server代理 1、找到SQL Serv

    2024年02月09日
    浏览(76)
  • 【数据库·关系数据库标准语言SQL·学习笔记】Microsoft SQL Server数据库的建立和删除

    开发环境:SQL Server Management Studio(SSMS) 利用数据库对象资源管理器创建数据库 (1)右击对象资源管理器中的数据库,选择新建数据库 (2)在新建数据库界面输入数据库名称 ,并选择确定 利用CREAT DATABASE命令在SSM工具的新建查询中创建数据库 1.语法格式 CREATE DATABASE dat

    2024年02月08日
    浏览(56)
  • sql数据库怎么备份,sql 实时备份

    在当今互联网时代,数据已经成为企业的核心资产。然而,数据的安全性和完整性面临硬件问题、软件故障、人工操作错误等各种威胁。为了保证数据的安全,实时备份已经成为公司必须采取的重要措施之一。下面我们就重点介绍SQL实时备份的重要实施方法。 SQL实时备份的必

    2024年02月10日
    浏览(58)
  • SQL Server数据库——创建数据库

    目录 一、界面方式创建数据库 1.1创建数据库xscj,数据文件和日志文件的属性按默认值设置  1.2在xscj数据库中增加文件xcsj1,其属性均取系统默认值  1.3在数据库xscj中增加一个名为myGroup的文件组。 1.4数据库的重命名  1.5数据库的删除  二、命令方式创建数据库 以创建学生管

    2024年02月01日
    浏览(63)
  • sql 创建sql server数据库文件组

    可以在建立数据库时候创建 如: CREATE DATABASE MyDB ON PRIMARY                           --主文件组和主要数据文件   ( NAME=\\\'MyDB_Primary\\\',    FILENAME= \\\'c:MyDB_Prm.mdf\\\'), FILEGROUP MyDB_FG1                   --用户定义文件组1   ( NAME = \\\'MyDB_FG1_Dat1\\\',    FILENAME = \\\'c:MyDB_FG1_1.ndf\\\'),  --次要数

    2024年02月08日
    浏览(61)
  • SQL数据库案例1——创建商店数据库

    创建商店数据库Commodities_Management 创建商品表、供应商表、进货表、销售表 各表分别输入数据 库名:Commodities_Management 字符集:utf16 表一:商品表 字段名 类型 长度 约束 商品编号 varchar 10 外键(参照进货表) 商品名 varchar 30 — 规格 varchar 20 — 供应商编号 varchar 10 非空 表二:

    2024年02月12日
    浏览(46)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包