pl/sql程序块的使用

sql 复制代码
-- Created on 2024-01-15 by ADMINISTRATOR 
declare 
  -- Local variables here
  record_tablename varchar2(100);---test_record表名
  record_StartNo integer(19);---test_record开始编号
  temp_No        integer(19);
  maxnbbh        integer(19);
  nCnt           integer := 20;
  finalStep_StartNo integer(19);---test_record开始编号
begin
  record_tablename := 'test_record';
  -- Test statements here
  getmaxid(record_tablename, nCnt, record_StartNo);---调用存储过程getmaxid
  dbms_output.put_line(record_StartNo);
  <<looplabel>>---接下来的循环 名称声明 便于接下来可以退出给循环
  loop---loop开始
      nCnt := nCnt - 1;
      record_StartNo := record_StartNo + 1;
      dbms_output.put_line(record_StartNo);
      if nCnt < 0 then ---判断  如果达到某一个条件 执行退出loop      
       exit looplabel; ---退出looplabel这个循环
      end if;---if语句必须要搭配使用
  end loop;---loop语句必须要搭配使用
  select max(nbbh) into maxnbbh from nmc3_record;---将test_recordd数据表中的nbbh最大值赋值给maxnbbh变量
  dbms_output.put_line(maxnbbh);
end;---begin语句必须要搭配使用

在plsql中打开程序块执行界面

参考:https://www.zhihu.com/column/c_1502301818272718849

pl/sql中变量的声明与使用:

参考https://zhuanlan.zhihu.com/p/507408401

PL/SQL 变量的声明和初始化

变量需要声明,初始化则可以在声明时进⾏,也可以不在此时进⾏,但是如果声明时定义为not null的情况下,就必须初始化才能使⽤。

变量声明的格式为:

复制代码
Identifier [CONSTANT]datatype [NOT NULL] [ := | DEFAULT expression ]

这⾥中括号中的内容都是可选项,具体含义如下:

  1. CONSTANT表⽰常量,⼀旦定义为常量,则不能在为该变量赋其他的值了;
  2. 如果定义了NOT NULL,则该变量必须赋值
  3. PL/SQL中赋值使⽤的是 :=,初始化时也可以使⽤DEFAULT来定义默认值。
相关推荐
zzzll1111几秒前
用 DeepSeek Harness 手搓一个自己的 Agent
数据库
名字还没想好☜7 分钟前
Spring @EventListener 事件驱动解耦实战:同步转异步、事务绑定与顺序控制
java·数据库·后端·python·spring
del9 分钟前
第十周技术博客
数据库
一木 之林15 分钟前
插件、MCP、Skill 的区别?
java·c++·人工智能
1314lay_100720 分钟前
C#调用Sql Server存储过程,并且使用传入表结构
数据库·经验分享·笔记·sqlserver·c#
小刘在重生~22 分钟前
面试重点:final、finalize、finally 三者区别
java
anxiao_m34 分钟前
2026大文件传输软件推荐,从速度安全多维度客观测评
数据库·文件传输·传输
边境悍匪1 小时前
蜗牛学苑 Java 智能体学习 Day39|SpringAI 会话存储、Function‑Call 工具调用、MCP 思维导图复盘
java·开发语言·spring boot·学习·阿里云
IT大白鼠1 小时前
MySQL 分布式集群系列 · 第七篇——生产调优实战:NDB 性能、内存、高可用全方位优化
数据库·分布式·mysql
IvorySQL1 小时前
打造下一代 AI Agent 的统一多模智能数据底座——PostgreSQL 与 AI 的融合演进
数据库·人工智能·postgresql