PL/SQL的几个概念区别(二)
['||var2||']');
9 dbms_output.put_line('var3 ['||var3||']');
10 dbms_output.put_line('var4 ['||var4||']');
11 END;
12 /
var1 []
var2 [12-6月 -12 05.51.44.750000 下午]
var3 []
var4 [12-6月 -12 05.51.44.750 下午]
PL/SQL 过程已成功完成。
一种有效的方式使用TRUNC(date_variable)函数把系统时间戳
[sql]
SQL> DECLARE
2 d DATE := SYSDATE;
3 BEGIN
4 dbms_output.put_line(TO_CHAR( TRUNC(d) ,'DD-MON-YY HH24:MI:SS'));
5 END;
6 /
12-6月 -12 00:00:00
PL/SQL 过程已成功完成。
4:NCHAR 和 CHAR NVARCHAR 和 VARCHAR区别:
NCHAR数据类型采用统一字符编码相当于CHAR数据类型,NVARCHAR2数据类型是统一字符编码相当于VARCHAR2数据类型,我们应该使用NCHAR或者NVARCHAR,因为在同样的
数据库中将支持多个字符集编码。
使用字符编码能够支持多个字符集,
AL16UTF16中一个字符占用3个字节 ,UTF8 编码一个字符占用两个字节。
NCHAR 和 NVARCHAR是为了统一化字符编码,为以后的扩展用。
5:STRING,VARCHAR,VARCAHR2之间的关系;
STRING,和VARCHAR 是VARCAHR2的 subtype。
6:PLS_INTEGER 和 INTEGER的区别:
PLS_INTEGER使用操作
系统的数学函数库,INTEGER是NUMBER的subtype。
PLS_INTEGER使用本地数学函数库,声明语句后不分配内存,直到变量分配一个值,可以通过length()函数进行侧测试;
[sql]
SQL> DECLARE
2 var1 PLS_INTEGER; -- A null value requires no space.
3 var2 PLS_INTEGER := 11; -- An integer requires space for each character.
4 BEGIN
5 dbms_output.put_line('var1 ['||length(var1)||']');
6 dbms_output.put_line('var2 ['||length(var2)||']');
7 END;
8 /
var1 []
var2 [2]
PL/SQL 过程已成功完成。