CREATE FUNCTION ???

CREATE FUNCTION????????????????????????????????????Java??????????????????????????????

??????????????????????????????????????????????????????????????????????????????????????????EXECUTE???????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????

??????

CREATE FUNCTION ????????? ( [ ??????????????? 
   [, FunctionParameter] ] * ) RETURNS ?????????????????? [ ??????????????? ] *

?????????

[ ???????????????. ] SQL92?????????

???????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????SYS????????????????????????????????????

???????????????

[ ????????? ] ????????????

???????????????????????????????????????????????????????????????

??????????????????????????????????????????????????????????????????

???: CREATE FUNCTION??????????????????????????????????????????????????????????????????????????????BLOB???CLOB???LONG VARCHAR???LONG VARCHAR FOR BIT DATA???XML????????????

??????????????????

?????? | ????????????

??????????????????????????????????????????????????????????????????

??????

TABLE( ????????? [, ????????? ]* )

???????????????????????????????????????????????????????????????Derby???????????????????????????????????? ????????????JDBC???ResultSet???????????????????????? ???????????????????????????Derby ???????????????????????? ??????????????????????????????Derby?????????????????????????????????????????????????????????????????????

?????????

SQL92????????? ????????????

?????????????????????????????????????????????????????????????????????

???: ???????????????????????????????????????????????????XML????????????????????????????????????

???????????????

 {
| LANGUAGE { JAVA }
| EXTERNAL NAME ?????????
| PARAMETER STYLE ????????????????????????
| { NO SQL | CONTAINS SQL | READS SQL DATA }
| { RETURNS NULL ON NULL INPUT | CALLED ON NULL INPUT }
 }

LANGUAGE

JAVA- ?????????Java?????????????????????public static??????????????????????????????????????????

EXTERNAL NAME string

??????????????????????????????????????????????????????????????????Java??????????????????????????????????????????????????????????????????????????????
????????????.???????????????
????????????????????????????????????????????????

????????????????????????

JAVA | DERBY_JDBC_RESULT_SET

?????????Java???????????????SQL??????????????????????????????????????????????????????????????????INOUT???OUT????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????Java???????????????????????????????????????????????????????????????java.sql.ResultSet[]???????????????????????????????????????????????????

Derby ??????????????????(??????????????????Long Varchar???BLOB?????????????????????)?????????????????????????????? ????????????????????????????????????????????????????????????????????????????????????

Derby????????????????????????PARAMETER STYLE?????????DERBY_JDBC_RESULT_SET??????????????????????????????????????????????????????????????????????????????????????????????????????JDBC???ResultSet?????????????????????????????????????????? ???????????????????????????PARAMETER STYLE?????????JAVA?????????

NO SQL, CONTAINS SQL, READS SQL DATA

??????????????????SQL????????????????????????????????????????????????????????????SQL???????????????????????????????????????

CONTAINS SQL
?????????????????????????????????????????????SQL??????????????????????????? ????????????????????????????????????????????????????????????????????????????????????????????????????????????
NO SQL
?????????SQL???????????????????????????
READS SQL DATA
???????????????????????????????????????SQL??????????????????????????????????????? ???????????????????????????????????????????????????????????????????????????????????????????????????????????? ????????????????????????

RETURNS NULL ON NULL INPUT or CALLED ON NULL INPUT

??????????????????null????????????????????????????????????????????????????????????????????????null?????????????????????
RETURNS NULL ON NULL INPUT
???????????????????????????????????????null??????????????????????????????????????????????????????????????????????????????null??????????????????
CALLED ON NULL INPUT
???????????????????????????null???????????????????????????????????????????????????????????????null??????????????????????????????????????????????????????????????????????????????????????????????????????????????????null???????????????????????????????????????????????????????????????????????????????????????
?????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????
  • LANGUAGE
  • PARAMETER STYLE
  • EXTERNAL NAME

Example

CREATE FUNCTION TO_DEGREES(RADIANS DOUBLE) RETURNS DOUBLE
PARAMETER STYLE JAVA NO SQL LANGUAGE JAVA
EXTERNAL NAME 'java.lang.Math.toDegrees'
????????????
CREATE INDEX ???
CREATE PROCEDURE ???
CREATE SCHEMA ???
CREATE SYNONYM ???
CREATE TABLE ???
CREATE TRIGGER ???
CREATE VIEW ???