$ npm install --save express
$ npm install --save-dev nodemon
$ npm install --save dotenv
$ npm install --save oracledb
$ npm install --save bcryptjs
$ npm install --save cookie-parser
#SERVER CONFIGURATIONS
SERVER_PORT=8500
#ORACLE CONFIGURATIONS
ORACLE_USER=userapi
ORACLE_PASSWORD=admin
ORACLE_CONNSTR=localhost:1521/orclpdb
CREATE TABLE PERSON(
ID NUMBER,
EMAIL VARCHAR2(100) UNIQUE NOT NULL,
PASSWORD VARCHAR2(1000) NOT NULL,
TOKEN VARCHAR2(1000),
ADD_DATE DATE DEFAULT SYSDATE,
MOD_DATE DATE,
PRIMARY KEY(ID)
);
CREATE SEQUENCE SQ_PERSON NOCACHE;
CREATE TABLE CATEGORY(
ID NUMBER,
PERSON_ID NUMBER NOT NULL,
NAME VARCHAR2(100) NOT NULL,
DESCRIPTION VARCHAR2(400) NOT NULL,
ADD_DATE DATE DEFAULT SYSDATE,
UPDATE_DATE DATE,
PRIMARY KEY(ID),
FOREIGN KEY(PERSON_ID) REFERENCES PERSON(ID)
);
CREATE SEQUENCE SQ_CATEGORY NOCACHE;
CREATE OR REPLACE FUNCTION API_TOKEN(PSECRET VARCHAR2) RETURN VARCHAR2
IS
VRESULT VARCHAR2(4000);
BEGIN
SELECT UTL_RAW.CAST_TO_VARCHAR2(UTL_I18N.STRING_TO_RAW(STANDARD_HASH(PSECRET,'MD5'),'AL32UTF8')) INTO VRESULT FROM dual;
RETURN VRESULT;
END API_TOKEN;
SELECT TO_CHAR(SYSDATE,'DD-MM-YYYY HH24:MI:SS') FROM DUAL;