oracle_申明与赋值

news/2024/10/18 8:22:10/

1.格式

--1.程序块结构
declare
--申明部分
begin
--执行部分
end;

2.写一个空的程序块

--1.程序块结构
declare
--申明部分
begin
--执行部分
null;
end;

在控制台输出【hello world】

--2.简单的程序输入
DECLARE
--申明部分
BEGIN
--执行部分
dbms_output.put_line('hello world');
END;

3.定义变量 变量赋值 变量是可变的

--已知长度求周长
DECLARE
--申明部分
v_long number;
v_wide number;
v_perimeter number;
BEGIN
--执行部分
v_long:=5;
v_wide:4;
v_perimeter:=(v_long*v_wide)*2--输出到控制台
dbms_output.put_line('v_perimeter =' || v_perimeter);
END;--申明变量的时候可以直接赋值,赋初始值
DECLARE
--申明部分
v_long number:=5;
v_wide number:4;
v_perimeter number;
BEGIN
--执行部分
v_perimeter:=(v_long*v_wide)*2
--输出到控制台
dbms_output.put_line('v_perimeter =' || v_perimeter);
END;

变量是可变的

DECLARE
--申明部分
v_long number :=5;
v_wide number:4;
v_perimeter number;
BEGIN
--执行部分
v_long:=8;--改变v_long的值
dbms_output.put_line('v_long =' || v_long);--输出v_long的值
v_perimeter:=(v_long*v_wide)*2
--输出到控制台
dbms_output.put_line('v_perimeter =' || v_perimeter);--||是拼接的意思
END;

4.定义常量constant 常量赋值 常量是不可变的,必须赋初始值

--4定义常量constant 常量赋值 常量是不可变的,必须赋初始值
--已知半径求直径
declare 
v_pi constant number:=3.14;
v_r number :=3;
v_area number;
BEGIN
--执行部分
v_area:=v_pi*v_r*v_r;
dbms_output.put_line('v_area =' || v_area);--||是拼接的意思
END;

5.字符/日期数据类型的变量

declare 
--申明部分
v_name VARIANCE2(30):='lisi';
v_date date:=sysdate;
begin 
--执行部分
v_date:=to_date('20240422','yyyymmdd')
dbms_output.put_line('v_date =' || v_date);--||是拼接的意思
dbms_output.put_line('v_name =' || v_name);--||是拼接的意思end;

6.隐式游标及其特性--只能返回一行数据,返回多行数据或者没有数据返回会报错

语法:select into(表里面的某个字段的某个值放到变量里)

--隐式游标及其特性--只能返回一行数据,返回多行数据或者没有数据返回会报错
--语法 select INTO(不能直接执行select into)
declare 
--申明部分
v_name varchar2(30);
v_sal number;
BEGIN
--执行部分
select ename,sal into v_name,v_sal from emp where emp=100;
dbms_output.put_line('v_name =' || v_name);
dbms_output.put_line('v_sal =' || v_sal);
dbms_output.put_line('姓名:' || v_name|| v_sal);
END;--特性1.:返回多行数据会报错
declare 
--申明部分
v_name varchar2(30);
v_sal number;
BEGIN
--执行部分
select ename,sal into v_name,v_sal from emp ;
dbms_output.put_line('姓名:' || v_name|| v_sal);
END;--特性2:没有数据返回会报错
declare 
--申明部分
v_name varchar2(30);
v_sal number;
BEGIN
--执行部分
select ename,sal into v_name,v_sal from emp where v_name='o' ;
dbms_output.put_line('姓名:' || v_name|| v_sal);
END;--防止报错---加聚合函数
declare 
--申明部分
v_name varchar2(30);
v_sal number;
BEGIN
--执行部分
select max(ename),max(sal) into v_name,v_sal from emp ;
dbms_output.put_line('姓名:' || v_name|| v_sal);
END;

7.%type / %rowtype 定义数据类型

7.%type / %rowtype 定义数据类型
--%type:引用数据库中的某一列的数据类型或者某一个变量的数据类型
declare 
--申明部分
v_name emp.ename%type;
BEGIN
--执行部分
select ename into v_name from emp where emp=100;
dbms_output.put_line('v_name =' || v_name);
END;--%rowtype:引用数据库中的一行(所有字段)作为数据类型
declare 
--申明部分
v_all emp%rowtype;
BEGIN
--执行部分
select ename into v_all.ename,v_all.sal from emp where emp=100;
dbms_output.put_line(v_all.ename|| v_all.sal );
END;


http://www.ppmy.cn/news/1431018.html

相关文章

OpenCV-基于阴影勾勒的图纸清晰度增强算法

作者:翟天保Steven 版权声明:著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处 实现原理 大家在工作和学习中,无论是写报告还是论文,经常有截图的需求,比如图表、图纸等&…

Ruby中Rack中间件的作用是什么?如何应用?

在 Ruby 中,Rack 是一个 Web 服务器接口,它允许开发者使用统一的方式构建 Web 应用程序。Rack 中间件是 Rack 框架的一个核心概念,它可以在请求被传递给应用程序之前或之后对请求和响应进行处理。 Rack 中间件的作用包括但不限于&#xff1a…

【氮化镓】GaN HEMT SEEs效应影响因素和机制

研究背景:AlGaN/GaN HEMT因其在高电压、高温和高频率下的操作能力而受到关注,尤其在航空航天和汽车应用中,其辐射响应变得尤为重要。重离子辐射可能导致绝缘体失效,即单事件效应(SEEs)引起的栅介质击穿。 …

【入门篇】本章包括创建云项目、数据库的使用、云存储管理、云函数的基本使用、实战举例(小程序之云函数开发入门到使用发布上线实操)

云函数 云函数相当于服务器接口的概念,它并属于小程序端代码。它是以函数的形式运行后端代码来响应事件以及调用其他服务。运行环境是Node.js。 一、基创建云函数项目 打开微信开发者工具: 打开微信开发者工具,并登录你的微信开发者账号。 创建项目: 如果还没有创建项目,你…

npm 打包后自动压缩成zip文件

在package.json里面的scripts下面的build添加 powershell -NoProfile -ExecutionPolicy Unrestricted -Command ./zip.ps1 新的build就是 "build": "vite build && esno ./build/script/postBuild.ts && powershell -NoProfile -ExecutionP…

【Java基础】23.接口

文章目录 一、接口的概念1.接口介绍2.接口与类相似点3.接口与类的区别4.接口特性5.抽象类和接口的区别 二、接口的声明三、接口的实现四、接口的继承五、接口的多继承六、标记接口 一、接口的概念 1.接口介绍 接口(英文:Interface)&#xf…

7.Prism框架之对话框服务

文章目录 一. 目标二. 技能介绍① 什么是Dialog?② Prism中Dialog的实现方式③ Dialog使用案例一 (修改器)④ Dialog使用案例2(异常显示窗口) 一. 目标 1. 什么是Dialog?2. 传统的Dialog如何实现?3. Prism中Dialog实现方式4. 使用Dialog实现一个异常信息弹出框 二. 技能介…

Selenium(一):八大元素定位

元素定位八大方法 1、find_element_by_id 通过id定位 find_element(By.ID,"kw") #建议使用2、find_element_by_name 通过标签名定位 find_element(By.NAME,"wd") #建议使用3、find_element_link_text 通过链接文本定位 find_element(By.LINK_TEXT,&q…