기록
Book 테이블 만들기 본문
create table book(
book_id number not null,
title varchar2(600) not null,
category varchar2(600) not null,
price number null,
insert_date date default sysdate null,
content clob null,
constraint pk_book primary key(book_id)
);
//alter table book
//add (constraint pk_book primary key(book_id));
COMMENT ON TABLE BOOK IS '도서정보';
COMMENT ON COLUMN BOOK.BOOK_ID IS '책 아이디';
COMMENT ON COLUMN BOOK.TITLE IS '제목';
COMMENT ON COLUMN BOOK.CATEGORY IS '카테고리';
COMMENT ON COLUMN BOOK.PRICE IS '가격';
COMMENT ON COLUMN BOOK.INSERT_DATE IS '입력일자';
COMMENT ON COLUMN BOOK.CONTENT IS '책 내용';
create or replace FUNCTION FN_GETCAMEL(COLUMN_NAME IN VARCHAR2)
RETURN VARCHAR2
IS
RSLT VARCHAR2(30);
BEGIN
--카멜표기로 변환(SITE_NUM -> siteNum)
SELECT LOWER(SUBSTR(REPLACE(INITCAP(COLUMN_NAME),'_'),1,1))
|| SUBSTR(REPLACE(INITCAP(COLUMN_NAME),'_'),2) INTO RSLT
FROM DUAL;
--리턴
RETURN RSLT;
--구글 카멜변환(https://heavenly-appear.tistory.com/270)
SELECT COLUMN_NAME
, DATA_TYPE
, CASE WHEN DATA_TYPE='NUMBER' THEN 'private int ' || FN_GETCAMEL(COLUMN_NAME) || ';'
WHEN DATA_TYPE IN('VARCHAR2','CHAR') THEN 'private String ' || FN_GETCAMEL(COLUMN_NAME) || ';'
WHEN DATA_TYPE='DATE' THEN 'private Date ' || FN_GETCAMEL(COLUMN_NAME) || ';'
ELSE 'private String ' || FN_GETCAMEL(COLUMN_NAME) || ';'
END AS CAMEL_CASE
, '' RESULTMAP
FROM ALL_TAB_COLUMNS
WHERE TABLE_NAME = 'BOOK';
'DB' 카테고리의 다른 글
insert all (0) | 2023.01.30 |
---|---|
bookVO 리스트불러오기(+검색) 추가 쿼리 (0) | 2023.01.25 |
PL/SQL 더미데이터 넣기, 정렬 (프로시저) (0) | 2023.01.25 |
서브쿼리 이용하여 기본키+1 만들기 (시퀀스) (0) | 2023.01.20 |
CRUD 연습(+SQL 새 계정 만들기 및 테이블 생성) (0) | 2023.01.07 |
Comments