PLSQL学习笔记——基本语法(一)

前言

由于工作中使用oracle数据库,使用软件PL/SQL Developer,所以在慕课网上学习,特此记录。
慕课网课程链接:https://www.imooc.com/learn/360
oracle文档:https://docs.oracle.com/cd/E11882_01/nav/portal_booklist.htm

说明

实际编程过程中,由于环境与课程不一致,有些代码有所出入:

  1. 我没有在declare上,加上一句set serveroutput on,因为我的环境会报错,而且貌似不需要。
  2. 结尾没有使用/
  3. 接受输入时,我的环境写accept语句会报错,也不需要写

学习内容

  1. PLSQL程序的软件是PL/SQL Developer,由java编写。
  2. PLSQL是一种面向过程的语言,既包括SQL语法,也有自己特定的。
  3. 基本程序结构:
  declare 说明部分(变量说明,光标申明,例外说明)`
  begin 语句序列(DML语句)
  	exception 例外处理语句
  end
  1. 六种基本变量类型:char, varchar2, boolean, number, long, date。定义时,变量名在前,类型在后。
    name1 char(15) ; 变量是个字符,长度15位
    name2 boolean := true ; 变量是布尔类型,初始值为true
    name3 number(7, 2); 变量是数字类型,有2位小数
declare
	pnum number(7,2);
	pname varchar(20);
	pdate date;
begin
	pnum:=1;
	dbms_output.put_line(pnum);
	pname:='Tom';
	dbms_output.put_line(pname);
	pdate:=sysdate;
	dbms_output.put_line(pdate+1);
end;
  1. 引用型变量:var_name tableName.字段名字%type;
declare
  var_name tableName.列名%type;
begin
  select 列名 into var_name from tableName where ..;
  dbms_output.put_line(var_name);
end;
  1. 记录型变量:row_name tableName%rowtype; 将一行作为类型赋值给一变量,类似数组或对象
declare
  var_name tableName%rowtype;
begin
  select * into var_name from tableName where ..;
  dbms_output.put_line(var_name.列名);
end;
  1. 条件语句
declare
	pnum number := #
begin
	if pnum = 0 then dbms_output.put_line('输出数字为0');
		elsif pnum = 1 then dbms_output.put_line('输出数字为1');
    	else dbms_output.put_line('其他');
  	end if;
end;
  1. 循环语句
    形式1:
declare
	pnum number := 1;
begin
	while pnum <= 10 loop
		 dbms_output.put_line(pnum);
		 pnum := pnum + 1;
	end loop;
end;

形式2(推荐,控制光标时方便):

declare
	pnum number := 1;
begin
	loop
		exit when pnum > 10;
		dbms_output.put_line(pnum);
		pnum := pnum + 1;
	end loop;
end;

形式3:

declare
  pnum number := 1;
begin
  for pnum in 1..8 loop
    dbms_output.put_line(pnum);
  end loop;
end;

你可能感兴趣的:(数据库)