Oracle을 이용한 테이블 생성

세피·2021년 5월 19일
0

Oracle을 이용한 테이블 생성

<발생한 문제점>

  1. 설계 부분에선 딱히 문제될만한게 없었다. Oracle에 boolean이 존재하지 않는다는 것?
  2. 모든걸 String으로 바꾼 후 작업 했다는 것(이 데이터 타입 때문에 팀원들 전부 작업이 꼬여서)
  3. 나 또한 팀원들과 oracle에 데이터들을 변경했는데 , 미리 만들어 놓은 jsp에 적용하지 못하고 놓친 부분이 있었음, 덕분에 에러를 하루종일 마주봄

oracle을 이용해 테이블을 생성했다.

순서를 다시 되새겨 보는데

  1. 아이디어 도출
  2. ERD 설계 -> table 생성
  3. 요구사항 정의서
  4. UI 설계 (PPT)
  5. WBS (기능 쫙 적어놓고 하나하나 기간 맞춰 만들기)
  6. 테스트 내역서 (기능 하나하나 테스트 해보기)
  7. 발표자료 만들기

순서가 이랬었는데

ERD는 복잡해서 다 올릴 수 없으니 table 생성한 것들만 올리겠다.

CREATE TABLE member( --회원

member_id NVARCHAR2(50) PRIMARY KEY,
pw NVARCHAR2(50),
name NVARCHAR2(30),
phone NVARCHAR2(20),
email NVARCHAR2(50),
birth_date DATE DEFAULT SYSDATE,
address NVARCHAR2(50),
reg_date DATE DEFAULT SYSDATE,
report_cnt NUMBER(7,0),
black_cnt NUMBER(7,0),
blind_cnt NUMBER(7,0),
black_blind_cnt NUMBER(7,0),
location NVARCHAR2(50),
manner_percent NUMBER(3,0),
manner_cnt NUMBER(7,0),
isblack NVARCHAR2(5) DEFAULT '0',
withdraw NVARCHAR2(5) DEFAULT '0'
);

CREATE TABLE Notice( --공지사항
Notice_idx NUMBER(10,0) PRIMARY KEY,
admin_id NVARCHAR2(50),
subject NVARCHAR2(100),
content NVARCHAR2(1500).
reg_date DATE DEFAULT SYSDATE
);

CREATE TABLE Question( --문의게시판
question_idx NUMBER(10,0) PRIMARY KEY,
subject NVARCHAR2(50),
content NVARCHAR2(1000),
reg_date DATE DEFAULT SYSDATE,
state NVARCHAR2(50) DEFAULT 'false',
answer NVARCHAR2(1000),
answer_date DATE DEFAULT SYSDATE,
admin_id NVARCHAR2(50),
member_id NVARCHAR2(50),
isdelete NVARCHAR2(5) DEFAULT '0',
ispw NVARCHAR2(5) DEFAULT '0',
question_category NUMBER(10,0)
);

CREATE TABLE question_category( --문의 카테고리
q_category_idx NUMBER(10,0) PRIMARY KEY,
q_category_name NVARCHAR2(50)
);

CREATE TABLE Frequently_Question( --자주묻는질문
frequently_idx NUMBER(10,0) PRIMARY KEY,
fq_question NVARCHAR2(200),
fq_answer NVARCHAR2(1500),
admin_id NVARCHAR2(50),
reg_date DATE DEFAULT SYSDATE
);

CREATE TABLE admin ( -- 관리자
admin_id NVARCHAR2(50),
admin_pw NVARCHAR2(200),
position NVARCHAR2(10),
activation NVARCHAR2(5) DEFAULT '0',
reg_date DATE DEFAULT SYSDATE,
CONSTRAINT pk_admin_id PRIMARY KEY(admin_id)
);

SEQUENCE 도 따로 다 만들었고
FOREIGN KEY도 한꺼번에 만들어줬다.

Boolean 데이터 타입은 oracle에 존재하지 않는다. 그래서 String 형으로 false,true로 하려고 했는데 이걸 다시 숫자로 0,1로 바꾸었다.

String이 디폴트이다 보니 팀원들이 이 부분에서 막히는 것이었다. (물론 나도..막혀서 하루종일 에러 페이지를 본 기억이 있다. ㅜㅜㅠ controller로 전혀 넘어가질 않던 데이터;)

중간 중간 이 문제로 팀원들이 데이터를 죄다 String으로 바꾸고 (그것을 인지는 하고 있었지만 수정을 안 해놔서 자꾸 에러가 떨어졌었다.)

회원가입 하는데 modelattribute가 안 먹힘, 자꾸 400에러가 뜨고 jsp에서 컨트롤러로 넘어갈 생각을 안 함

--> 이유는 ?

바로.. dto에 데이터 타입들과 jsp에 데이터 타입들이 안 맞아서 그랬던거임..(더불어 dto+db데이터 타입) 주르륵.. String으로 다 바꾸고 함

덕분에 애꿎은 modelattribute만 주구장창 공부한 기억이 있다.

다음은 요구사항 정의서


내가 할당받은 부분

profile
세피의 블로그입니다

0개의 댓글