DB (8) 썸네일형 리스트형 [IT국비지원교육_코딩_비전공자] 기본 SQL문 개념 정리(2) SQL 의미 - 구조적 질의어 ( 절차적) -데이터베이스(연관데이터의 모음) 조작언어 - ISO(국제표준화기구)/ANSI(미국국가표준협회)표준 정의 데이터베이스의 정의 : 저장데이터/ 통합데이터/공유 데이터/운영데이터 Ø 조직의 목적을 위해 존재하는 운영데이터를 통합 저장 및 공동으로 사용하도록 관리하는 시스템 인덱스 조회 속도를 높여주는 자료구조로 테이블의 특정 레코드 위치를 알려주는 용도로 사용 CREATE INDEX idx_ex ON tbl_name (columns) 인덱스 설계 과정 Ø 데이터 검색 조건 수집 Ø 접근경로(=검색조건) 결정 컬럼 조합 및 순서 결정 적용 및 test 뷰 다수의 테이블 또는 다른 뷰로 만들 수 있고 사용 목적은 단순한 질의어 사용 CREATE VIEW view_nam.. [IT국비지원교육_코딩_비전공자] 기본 SQL문 개념 정리(1) DDL: 스키마 도메인 테이블 뷰 인덱스 와 같은 오브젝트를 대상으로 함 제약조건 종류 >> PK FK UNIQUE NOT NULL CHECK ALTER 를 통해 테이블의 제약 조건을 변경할 수 있음 테이블: 행과 열로 구성되는 가장 기본적인 데이터 베이스 객체 ENTITY 개체 => 테이블 테이블 구조 변경 ALTER (컬럼 CRUD 제약조건 변경) DML 데이터의 생명주기 제어(=데이터조작어) **FK추가구문 CREATE TABLE TBL_EX( Name VARCHAR2(100) PRIMARY KEY, FOREIGN KEY REFERENCES ORDERNO NUMBER(10) TBL_FK(ORDERNO); ); INSERT INTO 명령문 복수 레코드 삽입 > VALUES()구문 내 연속하여 정의 D.. [IT국비지원교육_코딩_비전공자] 데이터 베이스 / 자주 사용하는 주요 기능 모음 -- 계정생성 및 권한 생성 CREATE USER 계정명 IDENTIFIED BY 비번; (계정생성) GRANT CONNECT, RESOURCE TO 계정명; (권한생성) -- VIEW 생성 권한. SYSNONYM 생성 권한을 STUDENT 계정에 부여 > GRANT CREATE VIEW, CREATE SYNONYM TO STUDENT; (시스템 권한) > GRANT SELECT ON HR.EMPLOYEES TO STUDENT; (객체 권한) -- SEQUENCE > DROP SEQUENCE SEQ_BOARD; (시퀀스 삭제) > CREATE SEQUENCE SEQ_BOARD; (시퀀스 생성) -- 테이블 생성 및 값추가 DROP TABLE TBL_BOARD; (테이블 삭제) CREATE TABLE TB.. [IT국비지원교육_코딩_비전공자] Oracle DB 테이블스페이스 생성 -- 테이블 스페이스 : 데이터들이 저장되는 물리적 공간 -- 회원정보를 저장하는 테이블 생성 하여 서블릿 연동 > 서블릿으로 회원정보 테이블 조회 -- 1) 테이블 스페이스 자체 생성(AWS서버 위치에 세팅 > 로컬 ORACLE XE 설치 위치) 및 해당 테이블 스페이스 사용 -- 2) 테이블 스페이스 사용할 준비 완료 -- 3) JSP 계정 생성 -- 4) JSP 권한 생성 -- 5) JSP 접속정보 생성 -- 호스트명 : np.coolcode.co.kr -- 사용자이름 : jsp -- Name : db.coolcode.co.kr_JSP -- 새 공간 생성 완료 !! -- DB 생성 완료 후 이클립스로 넘어가서 웹프로젝트 생성 (ojbc6.jar 다운받고 새 웹프로젝트 lib 폴더에 세팅해두기) --.. [IT국비지원교육_코딩_비전공자] local host db > aws host 오라클 이관 작업 이관하려는 로컬의 db를 이관받을 aws 계정 및 권한 생성하여 aws 계정으로 접속 이관하려는 로컬 db의 테이블 선택하여 익스포트 스키마 표시 해제 > 파일 경로 sql workspace로 변경 파일 경로 변경시 이름 설정 예) 익스포트 완료 후 이관하려는 aws 계정으로 접속 > 탐색기에서 익스포트 받은 파일을 접속한 계정 새파일에 끌어다 놓기 > f5 단축키로 일괄 실행 [IT국비지원교육_코딩_비전공자] sql테이블 생성/ERD모델/MVC 패턴 외래키 안쓰는 테이블을 먼저 생성해야함 학과 > 교수 > 학생 > 과목 > 수강 위의 순서로 생성한다 (부모 자식 관계의 이해 필요) - 외래키에 널값을 허용하는 경우 점선 표기 - 외래키에 널 불허가 들어있는 경우 실선 표기 답글형태의 계층형 게시판 제약조건의 이해를 기반으로 DB정규화 이해 가능 정규화 > 불필요한 데이터를 제거하는 과정 제 1정규화 행분리 제 2정규화(함수종속) 테이블 분리 제 3정규화 *** BCNF 정규화 중요 mvc 패턴의 앱 구현 단계 서비스(스캐너를 브라우저의 input타입의 댓글로 바뀔 예정) dao(수정x) vo(수정x)의 수정은 거의 없이 해당 모델을 그대로 사용할예정 오둥 패키지 소스 내 controller 패키지 생성 > index 클래스 생성 webcontent .. [IT국비지원교육_코딩_비전공자] Oracle Developer/ dao클래스 연동 -- 테이블 스페이스 : 데이터들이 저장되는 물리적 공간 -- 회원정보를 저장하는 테이블 생성 하여 서블릿 연동 > 서블릿으로 회원정보 테이블 조회 -- 1) 테이블 스페이스 자체 생성(AWS서버 위치에 세팅 > 로컬 ORACLE XE 설치 위치) 및 해당 테이블 스페이스 사용 -- DB 생성 완료 후 이클립스로 넘어가서 웹프로젝트 생성 (ojbc6.jar 다운받고 새 웹프로젝트 lib 폴더에 세팅해두기) -- ojdbc6.jar 를 활용해서 프로젝트의 서비스와 DB를 연동한다 public class DBConn { public static Connection getConnection() throws SQLException, ClassNotFoundException { Class.forName("orac.. [IT국비지원교육_코딩_비전공자] Oracle SQL_데이터베이스 연동/ ojdbc db 수업 주요 내용 > 그룹 / 조인 ojdbc라는 라이브러리를 이용해 데이터베이스와 연동해야 함 먼저 dao클래스를 만들고 각 기능을 할 메서드와 연결되는 sql문을 실행할 수 있도록 driver manager를 통해 connection 객체를 생성하고 연동된 db의 데이터 조작을 위한 sql문을 작성한다 sql문은 prepareStatement 객체에 담고 쿼리 결과를 executeUpdate 하여 반영만 하거나 별도의 변수에 담아 값을 확인하려는 경우 executeQuery()를 해준다 db 연동시에 exception이 발생할 수 있기때문에 적절히 try catch문안에 작성해주어야 한다 catch문에는 에러 로그를 확인할 수 있도록 printstackTrace()를 호출해준다 이전 1 다음