PL/SQL是ORACLE的过程化语言,包括一整套的数据类型、条件结构、循环结构和异常处理结构,PL/SQL可以执行SQL语句,SQL语句中也可以使用PL/SQL函数。 DECLARE NUMBER 数字型能存放整数值和实数值,并且可以定义精度和取值范围BINARY_INTEGER数字型可存储带符号整数,为整数计算优化性能DEC数字型DOUBLE PRECISION数字型的子类型,高精度实数 INTEGER数字型INT数字型NUMERIC数字型的子类型,与NUMBER等价 REAL数字型的子类型,与NUMBER等价 SMALLINT数字型NUMBER的子类型,取值范围比INTEGER小的子类型,取值范围比INTEGER小 VARCHAR2字符型存放可变长字符串,有最大长度CHAR字符型定长字符串LONG字符型变长字符串,最大长度可达32,767DATE日期型以数据库相同的格式存放日期值BOOLEAN布尔型TRUE OR FALSEROWIDROWID存放数据库的行号例子:DECLARE ORDER_NO NUMBER(3); CUST_NAME VARCHAR2(20); ORDER_DATE DATE; EMP_NO INTEGER:=25; PI CONSTANT NUMBER:=3.1416;BEGIN NULL;END; 例如:DECLARE X NUMBER;BEGIN X:= 'yyyy';--Error HereEXCEPTION WHEN VALUE_ERROR THEN DBMS_OUTPUT.PUT_LINE('EXCEPTION HANDED');END;NUMBER数字型能存放整数值和实数值,并且可以定义精度和取值范围BINARY_INTEGER数字型可存储带符号整数,为整数计算优化性能DEC数字型DOUBLE PRECISION数字型的子类型,高精度实数 INTEGER数字型INT数字型NUMERIC数字型的子类型,与NUMBER等价 REAL数字型的子类型,与NUMBER等价 SMALLINT数字型NUMBER的子类型,取值范围比INTEGER小的子类型,取值范围比INTEGER小 VARCHAR2字符型存放可变长字符串,有最大长度CHAR字符型定长字符串LONG字符型变长字符串,最大长度可达32,767DATE日期型以数据库相同的格式存放日期值BOOLEAN布尔型TRUE OR FALSEROWIDROWID存放数据库的行号例子:DECLARE ORDER_NO NUMBER(3); CUST_NAME VARCHAR2(20); ORDER_DATE DATE; EMP_NO INTEGER:=25; PI CONSTANT NUMBER:=3.1416;BEGIN NULL;END; 例如:DECLARE X NUMBER;BEGIN X:= 'yyyy';--Error HereEXCEPTION WHEN VALUE_ERROR THEN DBMS_OUTPUT.PUT_LINE('EXCEPTION HANDED');END;BINARY_INTEGER数字型可存储带符号整数,为整数计算优化性能DEC数字型DOUBLE PRECISION数字型的子类型,高精度实数 INTEGER数字型INT数字型NUMERIC数字型的子类型,与NUMBER等价 REAL数字型的子类型,与NUMBER等价 SMALLINT数字型NUMBER的子类型,取值范围比INTEGER小的子类型,取值范围比INTEGER小 VARCHAR2字符型存放可变长字符串,有最大长度CHAR字符型定长字符串LONG字符型变长字符串,最大长度可达32,767DATE日期型以数据库相同的格式存放日期值BOOLEAN布尔型TRUE OR FALSEROWIDROWID存放数据库的行号例子:DECLARE ORDER_NO NUMBER(3); CUST_NAME VARCHAR2(20); ORDER_DATE DATE; EMP_NO INTEGER:=25; PI CONSTANT NUMBER:=3.1416;BEGIN NULL;END; 例如:DECLARE X NUMBER;BEGIN X:= 'yyyy';--Error HereEXCEPTION WHEN VALUE_ERROR THEN DBMS_OUTPUT.PUT_LINE('EXCEPTION HANDED');END;DEC数字型DOUBLE PRECISION数字型的子类型,高精度实数 INTEGER数字型INT数字型NUMERIC数字型的子类型,与NUMBER等价 REAL数字型的子类型,与NUMBER等价 SMALLINT数字型NUMBER的子类型,取值范围比INTEGER小的子类型,取值范围比INTEGER小 VARCHAR2字符型存放可变长字符串,有最大长度CHAR字符型定长字符串LONG字符型变长字符串,最大长度可达32,767DATE日期型以数据库相同的格式存放日期值BOOLEAN布尔型TRUE OR FALSEROWIDROWID存放数据库的行号例子:DECLARE ORDER_NO NUMBER(3); CUST_NAME VARCHAR2(20); ORDER_DATE DATE; EMP_NO INTEGER:=25; PI CONSTANT NUMBER:=3.1416;BEGIN NULL;END; 例如:DECLARE X NUMBER;BEGIN X:= 'yyyy';--Error HereEXCEPTION WHEN VALUE_ERROR THEN DBMS_OUTPUT.PUT_LINE('EXCEPTION HANDED');END;DOUBLE PRECISION数字型的子类型,高精度实数 INTEGER数字型INT数字型NUMERIC数字型的子类型,与NUMBER等价 REAL数字型的子类型,与NUMBER等价 SMALLINT数字型NUMBER的子类型,取值范围比INTEGER小的子类型,取值范围比INTEGER小 VARCHAR2字符型存放可变长字符串,有最大长度CHAR字符型定长字符串LONG字符型变长字符串,最大长度可达32,767DATE日期型以数据库相同的格式存放日期值BOOLEAN布尔型TRUE OR FALSEROWIDROWID存放数据库的行号例子:DECLARE ORDER_NO NUMBER(3); CUST_NAME VARCHAR2(20); ORDER_DATE DATE; EMP_NO INTEGER:=25; PI CONSTANT NUMBER:=3.1416;BEGIN NULL;END; 例如:DECLARE X NUMBER;BEGIN X:= 'yyyy';--Error HereEXCEPTION WHEN VALUE_ERROR THEN DBMS_OUTPUT.PUT_LINE('EXCEPTION HANDED');END;INTEGER数字型INT数字型NUMERIC数字型的子类型,与NUMBER等价 REAL数字型的子类型,与NUMBER等价 SMALLINT数字型NUMBER的子类型,取值范围比INTEGER小的子类型,取值范围比INTEGER小 VARCHAR2字符型存放可变长字符串,有最大长度CHAR字符型定长字符串LONG字符型变长字符串,最大长度可达32,767DATE日期型以数据库相同的格式存放日期值BOOLEAN布尔型TRUE OR FALSEROWIDROWID存放数据库的行号例子:DECLARE ORDER_NO NUMBER(3); CUST_NAME VARCHAR2(20); ORDER_DATE DATE; EMP_NO INTEGER:=25; PI CONSTANT NUMBER:=3.1416;BEGIN NULL;END; 例如:DECLARE X NUMBER;BEGIN X:= 'yyyy';--Error HereEXCEPTION WHEN VALUE_ERROR THEN DBMS_OUTPUT.PUT_LINE('EXCEPTION HANDED');END;INT数字型NUMERIC数字型的子类型,与NUMBER等价 REAL数字型的子类型,与NUMBER等价 SMALLINT数字型NUMBER的子类型,取值范围比INTEGER小的子类型,取值范围比INTEGER小 VARCHAR2字符型存放可变长字符串,有最大长度CHAR字符型定长字符串LONG字符型变长字符串,最大长度可达32,767DATE日期型以数据库相同的格式存放日期值BOOLEAN布尔型TRUE OR FALSEROWIDROWID存放数据库的行号例子:DECLARE ORDER_NO NUMBER(3); CUST_NAME VARCHAR2(20); ORDER_DATE DATE; EMP_NO INTEGER:=25; PI CONSTANT NUMBER:=3.1416;BEGIN NULL;END; 例如:DECLARE X NUMBER;BEGIN X:= 'yyyy';--Error HereEXCEPTION WHEN VALUE_ERROR THEN DBMS_OUTPUT.PUT_LINE('EXCEPTION HANDED');END;NUMERIC数字型的子类型,与NUMBER等价 REAL数字型的子类型,与NUMBER等价 SMALLINT数字型NUMBER的子类型,取值范围比INTEGER小的子类型,取值范围比INTEGER小 VARCHAR2字符型存放可变长字符串,有最大长度CHAR字符型定长字符串LONG字符型变长字符串,最大长度可达32,767DATE日期型以数据库相同的格式存放日期值BOOLEAN布尔型TRUE OR FALSEROWIDROWID存放数据库的行号例子:DECLARE ORDER_NO NUMBER(3); CUST_NAME VARCHAR2(20); ORDER_DATE DATE; EMP_NO INTEGER:=25; PI CONSTANT NUMBER:=3.1416;BEGIN NULL;END; 例如:DECLARE X NUMBER;BEGIN X:= 'yyyy';--Error HereEXCEPTION WHEN VALUE_ERROR THEN DBMS_OUTPUT.PUT_LINE('EXCEPTION HANDED');END;REAL数字型的子类型,与NUMBER等价 SMALLINT数字型NUMBER的子类型,取值范围比INTEGER小的子类型,取值范围比INTEGER小 VARCHAR2字符型存放可变长字符串,有最大长度CHAR字符型定长字符串LONG字符型变长字符串,最大长度可达32,767DATE日期型以数据库相同的格式存放日期值BOOLEAN布尔型TRUE OR FALSEROWIDROWID存放数据库的行号例子:DECLARE ORDER_NO NUMBER(3); CUST_NAME VARCHAR2(20); ORDER_DATE DATE; EMP_NO INTEGER:=25; PI CONSTANT NUMBER:=3.1416;BEGIN NULL;END; 例如:DECLARE X NUMBER;BEGIN X:= 'yyyy';--Error HereEXCEPTION WHEN VALUE_ERROR THEN DBMS_OUTPUT.PUT_LINE('EXCEPTION HANDED');END;SMALLINT数字型NUMBER的子类型,取值范围比INTEGER小的子类型,取值范围比INTEGER小 VARCHAR2字符型存放可变长字符串,有最大长度CHAR字符型定长字符串LONG字符型变长字符串,最大长度可达32,767DATE日期型以数据库相同的格式存放日期值BOOLEAN布尔型TRUE OR FALSEROWIDROWID存放数据库的行号例子:DECLARE ORDER_NO NUMBER(3); CUST_NAME VARCHAR2(20); ORDER_DATE DATE; EMP_NO INTEGER:=25; PI CONSTANT NUMBER:=3.1416;BEGIN NULL;END; 例如:DECLARE X NUMBER;BEGIN X:= 'yyyy';--Error HereEXCEPTION WHEN VALUE_ERROR THEN DBMS_OUTPUT.PUT_LINE('EXCEPTION HANDED');END;VARCHAR2字符型存放可变长字符串,有最大长度CHAR字符型定长字符串LONG字符型变长字符串,最大长度可达32,767DATE日期型以数据库相同的格式存放日期值BOOLEAN布尔型TRUE OR FALSEROWIDROWID存放数据库的行号例子:DECLARE ORDER_NO NUMBER(3); CUST_NAME VARCHAR2(20); ORDER_DATE DATE; EMP_NO INTEGER:=25; PI CONSTANT NUMBER:=3.1416;BEGIN NULL;END; 例如:DECLARE X NUMBER;BEGIN X:= 'yyyy';--Error HereEXCEPTION WHEN VALUE_ERROR THEN DBMS_OUTPUT.PUT_LINE('EXCEPTION HANDED');END;CHAR字符型定长字符串LONG字符型变长字符串,最大长度可达32,767DATE日期型以数据库相同的格式存放日期值BOOLEAN布尔型TRUE OR FALSEROWIDROWID存放数据库的行号例子:DECLARE ORDER_NO NUMBER(3); CUST_NAME VARCHAR2(20); ORDER_DATE DATE; EMP_NO INTEGER:=25; PI CONSTANT NUMBER:=3.1416;BEGIN NULL;END; 例如:DECLARE X NUMBER;BEGIN X:= 'yyyy';--Error HereEXCEPTION WHEN VALUE_ERROR THEN DBMS_OUTPUT.PUT_LINE('EXCEPTION HANDED');END;LONG字符型变长字符串,最大长度可达32,767DATE日期型以数据库相同的格式存放日期值BOOLEAN布尔型TRUE OR FALSEROWIDROWID存放数据库的行号例子:DECLARE ORDER_NO NUMBER(3); CUST_NAME VARCHAR2(20); ORDER_DATE DATE; EMP_NO INTEGER:=25; PI CONSTANT NUMBER:=3.1416;BEGIN NULL;END; 例如:DECLARE X NUMBER;BEGIN X:= 'yyyy';--Error HereEXCEPTION WHEN VALUE_ERROR THEN DBMS_OUTPUT.PUT_LINE('EXCEPTION HANDED');END;DATE日期型以数据库相同的格式存放日期值BOOLEAN布尔型TRUE OR FALSEROWIDROWID存放数据库的行号例子:DECLARE ORDER_NO NUMBER(3); CUST_NAME VARCHAR2(20); ORDER_DATE DATE; EMP_NO INTEGER:=25; PI CONSTANT NUMBER:=3.1416;BEGIN NULL;END; 例如:DECLARE X NUMBER;BEGIN X:= 'yyyy';--Error HereEXCEPTION WHEN VALUE_ERROR THEN DBMS_OUTPUT.PUT_LINE('EXCEPTION HANDED');END;BOOLEAN布尔型TRUE OR FALSEROWIDROWID存放数据库的行号例子:DECLARE ORDER_NO NUMBER(3); CUST_NAME VARCHAR2(20); ORDER_DATE DATE; EMP_NO INTEGER:=25; PI CONSTANT NUMBER:=3.1416;BEGIN NULL;END; 例如:DECLARE X NUMBER;BEGIN X:= 'yyyy';--Error HereEXCEPTION WHEN VALUE_ERROR THEN DBMS_OUTPUT.PUT_LINE('EXCEPTION HANDED');END;ROWIDROWID存放数据库的行号例子:DECLARE ORDER_NO NUMBER(3); CUST_NAME VARCHAR2(20); ORDER_DATE DATE; EMP_NO INTEGER:=25; PI CONSTANT NUMBER:=3.1416;BEGIN NULL;END; 例如:DECLARE X NUMBER;BEGIN X:= 'yyyy';--Error HereEXCEPTION WHEN VALUE_ERROR THEN DBMS_OUTPUT.PUT_LINE('EXCEPTION HANDED');END; PL/SQL是ORACLE的过程化语言,包括一整套的数据类型、条件结构、循环结构和异常处理结构,PL/SQL可以执行SQL语句,SQL语句中也可以使用PL/SQL函数。 DECLARE NUMBER 数字型能存放整数值和实数值,并且可以定义精度和取值范围BINARY_INTEGER数字型可存储带符号整数,为整数计算优化性能DEC数字型DOUBLE PRECISION数字型的子类型,高精度实数 INTEGER数字型INT数字型NUMERIC数字型的子类型,与NUMBER等价 REAL数字型的子类型,与NUMBER等价 SMALLINT数字型NUMBER的子类型,取值范围比INTEGER小的子类型,取值范围比INTEGER小 VARCHAR2字符型存放可变长字符串,有最大长度CHAR字符型定长字符串LONG字符型变长字符串,最大长度可达32,767DATE日期型以数据库相同的格式存放日期值BOOLEAN布尔型TRUE OR FALSEROWIDROWID存放数据库的行号例子:DECLARE ORDER_NO NUMBER(3); CUST_NAME VARCHAR2(20); ORDER_DATE DATE; EMP_NO INTEGER:=25; PI CONSTANT NUMBER:=3.1416;BEGIN NULL;END; 例如:DECLARE X NUMBER;BEGIN X:= 'yyyy';--Error HereEXCEPTION WHEN VALUE_ERROR THEN DBMS_OUTPUT.PUT_LINE('EXCEPTION HANDED');END;NUMBER数字型能存放整数值和实数值,并且可以定义精度和取值范围