当前位置:  数据库>oracle

PL/SQL编程中变量的声明

    来源: 互联网  发布时间:2017-05-22

    本文导语: PL/SQL编程中变量的声明 创建第一个程序hello world begin dbms_output.put_line('Hello world'); end; /   set serveroutput on;(输出语句到dos窗口的命令)   begin dbms_output.put_line('Hello world'); end; / 就可以在dos窗口中看到Hello world;   (简单变量的声明...

PL/SQL编程中变量的声明

创建第一个程序hello world
begin
dbms_output.put_line('Hello world');
end;
/
 
set serveroutput on;(输出语句到dos窗口的命令)
 
begin
dbms_output.put_line('Hello world');
end;
/
就可以在dos窗口中看到Hello world;
 
(简单变量的声明)
声明变量:
declare
v_name varchar2(20);(变量名在前,类型在后)
begin
v_name := 'myname';(给变量进行赋值)
dbms_output.put_line(v_name);
end;
/
(异常处理)
declare
v_num number := 0;
begin
v_num := 2/v_num;
dbms_output.put_line(v_num);
exception
when others then
dbms_output.put_line('error');
end;
变量声明的规则:
1 变量名不能使用保留字:(from,select)
2 第一个字符必须是字母
3 变量名最多包含30个字符
4 不要与数据库的表或者列同名
5 每一行只能声明一个变量
 
常用类型变量:
binary_integer :整数,主要用来计数而不是用来表示字段类型,(提高效率)
number;数字类型
char:定长字符串;
date:日期;
long:长字符串,最长2G;
,null值
常量的练习;
declare
v_temp number(1);
v_count binary_integer :=0;
v_sal number(7,2) :=4000.00;
v_date date := sysdate;
v_pi constant number(3,2) := 3.14;
v_valid boolean :=false;
v_name varchar2(20) not null :='MyName';
begin
dbms_output.put_line('v_temp value' || v_temp);(||连接符)
end;
/
注释一句用'--' 注释一段/* */
 
使用%type属性:
declare (
v_empno number(4);
v_empno2
v_empno3
begin
dbms_output.put_line('Test');
end;
 
复合变量的声明:
 
第一种:
Table变量类型(相当于java的数组)
declare
typeis table of emp.empno%type index by binary_integer;
v_empnos
begin
v_empnos(0) := 7369;
v_empnos(2) := 7839;
v_empnos(-1) := 9999
dbms_output.put_line(v_empnos(-1));
end;
 
Record变量类型:(相当于java的类)
declare
typerecord
(
deptno dept.deptno%type,
dname dept.dname%type,
loc dept.loc%type
);
v_temp type_record_dept;
begin
v_temp.deptno :=50;(
v_temp.dname :='aaaa';
v_temp.loc := 'bj';
dbms_output.put_line(v_temp.deptno || ' '|| v_temp.dname);
end;
 
使用%rowtype声明record 变量;
declare
v_temp;
begin
v_temp.deptno := 50;
v_temp.dname := 'aaaa';
v_temp.loc := 'bj';
dbms_output.put_line(v_temp.deptno || ' ' || v_temp.dname);
end;
 
SQL(select)语句在PlSQL中的应用:
declare
v_ename emp.ename%type;
v_sal emp.sal%type;
begin --plsql语句中select语句中必须有into ,必须保证返回记录
into
dbms_output.put_line(v_ename || ' ' || v_sal);
end;
 
declare
v_emp emp
begin
dbms_output.put_line(v_emp.empno);
end;
 
declare
v_deptno dept.deptno%type := 50;
v_dname dept.dname%type :='aaaa';
v_loc dept.loc%type := 'bj';
begin --插入数值;
commit;
end;
 
 
declare
v_deptno:= 10;
v_count number;
begin
-- sql表示刚刚执行完的那条语句,(执行完这条语句后,有多少记录被 影响)
dbms_output.put_line(sql%rowcount || '条记录被影响');
commit;
end;


    
 
 

您可能感兴趣的文章:

  • Sql学习第一天——SQL 将变量定义为Table类型(虚拟表)
  • SqlServer中用exec处理sql字符串中含有变量的小例子
  • SQL Server表变量与临时表的区别
  • Shell脚本调用Sql脚本并向其中传递变量
  • 谁能告诉我 sql server 2000 jdbc驱动程序应该怎么设置,如果设环境变量怎么设,谢谢!
  • 一个方法中,用Connection con变量连接数据库,执行完sql以后,关闭con,返回resultset,报错“关闭的连接: next”
  • sql server使用变量动态命名临时表表名的例子
  • sql server 表变量与临时表
  • Sql Server遍历表记录的二种方法(表变量与游标)
  • SQL中WHERE变量IS NULL条件导致全表扫描问题的解决方法
  • SQL Server遍历表中记录的2种方法(使用表变量和游标)
  • sql 表变量与临时表的实例解析
  • 怎样把变量代进SQL语句
  • 在sql查询中使用表变量
  • SQL Server中临时表与表变量用法区别
  • 关于SQL 存储过程入门基础(变量)
  • sql中参数过多利用变量替换参数的方法
  • 在Oracle PL/SQL中游标声明中表名动态变化的方法
  • SQL Server 游标语句 声明/打开/循环实例
  •  
    本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
    本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。












  • 相关文章推荐
  • 请问Linux数据库编程是否也可以支持通用的SQL语言进行数据库编写.
  • sql编程的几个常识
  • sql编程工具Sql Prompt下载及安装破解图文教程
  • PL/SQL编程经验小结开发者网络Oracle
  • Oracle9iPL/SQL编程的经验小结
  • 编程经验点滴 动态SQL的拼接技巧
  • ORACLE PL/SQL 触发器编程篇介绍
  • Oracle PL/SQL编程有关的数据库对象
  • T-SQL编程学习笔记
  • ASP数据库编程SQL常用技巧
  • java命名空间java.sql接口statement的类成员方法: executeupdate定义及介绍
  • 请问,这是什么错误!java.sql.SQLException: [Microsoft][ODBC SQL Server Driver][Named Pipes]??????? SQL Server?虽然分少,但一定给,只要您是前5名回复者中最好的以为!
  • java命名空间java.sql接口connection的类成员方法: nativesql定义及介绍
  • SQL查询分析工具 SQL Workbench/J
  • java命名空间java.sql接口preparedstatement的类成员方法: executeupdate定义及介绍
  • oracle导出sql语句的结果集和保存执行的sql语句(深入分析)
  • java命名空间java.sql接口rowid的类成员方法: getbytes定义及介绍
  • SQL Server统计SQL语句执行时间的脚本
  • java命名空间java.sql接口ref的类成员方法: getbasetypename定义及介绍
  • SQL客户端软件 PKLite SQL Client
  • java命名空间java.sql接口databasemetadata的类成员方法: getsqlkeywords定义及介绍
  • SQL语句实现SQL Server 2000及Sql Server 2005日志收缩(批量)
  • java命名空间java.sql接口rowid的类成员方法: tostring定义及介绍
  • SQL客户端管理工具 SQuirreL SQL Client
  • java命名空间javax.sql.rowset接口joinrowset的类成员方法: getwhereclause定义及介绍
  • 如何处理此错误:java.sql.SQLException: [Microsoft][ODBC SQL Server Driver]没有执行可选特性
  • java命名空间java.sql接口statement的类成员方法: execute定义及介绍
  • sql2005 大数据量检索分页的sql代码
  • java命名空间java.sql接口resultset的类成员方法: getcursorname定义及介绍
  • 如何实现连接一次数据库,提交多个sql语句。(sql的批处理)
  • java命名空间java.sql接口resultsetmetadata的类成员方法: getcolumntype定义及介绍


  • 站内导航:


    特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

    ©2012-2021,