标量表达式

标量表达式是标量操作数和操作符的序列。标量操作数可以是标量类型的常数、变量和返回标量类型值的函数调用或过程调用,也可以是另一个标量表达式。

PLOSCAR根据操作数的值和数据类型以及操作符计算表达式的值和数据类型。

示例:标量表达式

--  清理环境
DROP PROCEDURE test CASCADE;

create or replace procedure test(temp INTEGER)
as
    var_a INTEGER;
    var_b INTEGER;
    var_c INTEGER;
begin
    -- temp是integer变量,2,3是常数,+,*是操作符
    var_a := temp *2 + 3;
    dbms_output.put_line( 'var_a = ' || var_a);
    
    -- lenth是参数类型为varchar的PLOSCAR函数,'hello,ploscar'是字符串常数
    var_b := length('hello,ploscar');
    dbms_output.put_line( 'var_b = ' || var_b);
    
    -- char_length是SQL标准定义的函数,'hello,sql'是字符串常数

    var_c := char_length('hello,sql');
    dbms_output.put_line( 'var_c = ' || var_c);
end;
/

exec test(2);
var_a = 7
var_b = 13
var_c = 9

--  删除函数
DROP PROCEDURE test CASCADE;