본문 바로가기

.주제별/SQL,DB

(23)
SQL) 오라클 페이징 오라클 페이징 처리에는 두가지 방법이 있다고 한다. 1. HINT(힌트) 이용 /* * 추후 내용 보강하겠슴. */ 2. row_number() 이용 예제1) SQL 문 select * from (select tb.*, row_number() over(order by title asc) as num from TABLE01 tb ) where num between 10 and 20 설명 목적: TABLE01 인 tb에서 모든 field 값들을 얻어온다. 01. tb에서 title 내림차순으로 field값을 얻어오고, 02. 그 결과 중, 순서가 10~20 사이에 값들을 얻어온다. 예제2) SQL 문 select * from (select seqno , title, name, memo, row_number(..
SQL)강의- 제 16 장 시스템 권한(Privileges) 출처 : http://naver.kaist.ac.kr/oracle_sql/s16.htm 1. 시스템 권한 ◈80개 이상의 권한이 있다. ◈DBA는 상위 레벨의 시스템 권한을 갖는다. ◈새로운 사용자 생성 ◈사용자 삭제 ◈테이블 삭제 ◈테이블 백업 ◈DBA는 SQL 명령인 CREATE USER를 써서 사용자를 생성한다. ◈시스템 권한은 대개 데이터 베이스 관리자 (DBA)가 부여한다. 시스템 권한 할 수 있는 일 CREATE USER 다른 Oracle 사용자를 생성할 수 있게 한다. DROP USER 다른 사용자를 삭제 할 수 있다. DROP ANY TABLE 스키마에 있는 테이블을 삭제 할 수 있다. ♣ 사용자 생성 ◈DBA는 여러 시스템 권한을 사용하여 Oracle의 새로운 사용자를 생성 할 수도 있다..
SQL)강의- 제 15 장 인덱스 생성 출처 : http://naver.kaist.ac.kr/oracle_sql/s15.htm 1. 인덱스 생성 개요 ◈인덱스는 포인터를 써서 행을 빠르게 검색할 수 있는 데이터베이스 객체이다. ◈인덱스는 명시적 또는 자동적으로 생성 할 수 있으며 생성후 바로 사용된다. ◈Column에 대한 인덱스가 없으면 한 테이블 전체를 검색하게 된다. ♣ 인덱스란? ◈인덱스는 테이블의 값을 빠르게 액세스 하도록 하는 데이터베이스 객체이다. ◈데이터를 빠르게 찾기 위한 B*트리를 써서 디스크 입출력 횟수를 줄인다. ◈인덱스를 만들면 사용자가 직접 조작할 필요가 없게 된다. ◈인덱스는 논리적으로도 물리적으로도 테이블과는 독립적이다. ◈언제든지 생성하거나 삭제할 수 있으며 테이블이나 다른 인덱스에 영향을 주지 않는다는 의미이다..
SQL)강의- 제 14 장 View 생성 출처 : http://naver.kaist.ac.kr/oracle_sql/s14.htm 1. 뷰? ◈뷰란 테이블이나 다른 뷰를 기초로 한 논리적인 테이블이다. ◈뷰는 자체의 데이터는 없지만 테이블의 데이터를 보거나 변경할 수 있는 창과 같다. ◈뷰는 실제적으로는 질의문장을 가진다. ♣ 뷰의 장점 ◈뷰는 데이터베이스의 선택적인 내용을 보여줄 수 있기 때문에 데이터베이스에 대한 액세스를 제한한다. ◈복잡한 질의어를 통해 얻을 수 있는 결과를 간단한 질의어를 써서 구할 수 있게 한다. 예를 들면 조인 방법을 몰라도 조인을 한것처럼 여러 테이블에 대한 데이터를 뷰를 통해 볼수 있다. ◈한 개의 뷰로 여러 테이블에 대한 데이터를 검색할 수 있다. ◈특정 평가기준에 따른 사용자 별로 다른 데이터를 액세스할 수 있다..
SQL)강의- 제 13 장 Sequence 생성 출처 : http://naver.kaist.ac.kr/oracle_sql/s13.htm 1. Sequenc 생성 ◈ 자동적으로 순차적인 숫자를 생성하기 위해 Sequenc를 정의한다. CREATE SEQUENC NAME [INCREMENT BY n] [START WITH n] [{MAXVQLUE n | NOMAXVALUE}] [{MINVALUE n | NOMINVALUE}] [{CYCLE | NOCYCLE}] [{CACHE n | NOCACHE}] ◈INCREMENT BY n은 Sequenc번호간의 간격인 정수 n이며, 생략되면 Sequenc는 1씩 증가 ◈START WITH n은 생성되는 첫 번째 Sequenc번호로 생략되면 시퀀스는 1씩 증가 ◈MAXVALUE n은 생성가능한 Sequenc의 최대값 ..
SQL)강의- 제 12 장 테이블구조 변경과 제약조건 변경 출처 : http://naver.kaist.ac.kr/oracle_sql/s12.htm 1. Column의 추가 ♣ Syntax ADD절이 있는 ALTER TABLE 명령을 써서 테이블에 column을 추가할 수 있다. ◈새로운 column의 추가 ◈새로운 column에 대한 Default 값을 정의 ◈값을 갖고 있어야만 하는 column을 명시(NOT NULL 설정) ALTER TABLE 테이블 명 ADD (새로운 column Datatype [DEFAULT 식] [NOT NULL] [. 새로운 column Datatype] ...): DEFAULT 식은 새로운 column에 대한 default 값을 지정하며, NOT NULL은 새로운 column에 NOT NULL 제약조건을 추가한다. ◈기존의 col..
SQL)강의- 제 11 장 데이터 조작(DML) 출처 : http://naver.kaist.ac.kr/oracle_sql/s11.htm ♣ 데이터 조작 명령어와 트랜잭션 제어 명령어 ◈데이터 조작어(DML)는 SQL의 핵심이다. ◈데이터베이스에 데이터를 추가, 변경, 삭제를 하려할 때 DML문을 사용한다. ◈아직 commitehlwl 않은 DML문의 집합을 트랜잭션 또는 작업의 논리적 단위라 한다. 명 령 설 명 INSERT 테이블에 새로운 행 추가 UPDATE 테이블의 행 변경 DELETE 테이블의 행 삭제 COMMIT 저장되지 않은 모든 변경사항을 DB에 저장 SAVEPOINT Savepoint 설정 ROLLBACK 저장되지 않은 모든 변경사항을 취소 1. 테이블에 새로운 행 삽입(INSERT) ◈INSERT문을 써서 테이블에 새로운 행을 추가한다..
SQL)강의- 제 10 장 Oracle Data Dictionary 출처 : http://naver.kaist.ac.kr/oracle_sql/s10.htm 1. 오라클 데이터베이스의 테이블 ♣ 개요 ◈Oracle 데이터 사전은 데이터베이스가 만들어지면 자동으로 생성된다. ◈데이터베이스에 대한 작업이 있으면 Oracle7 server가 데이터 사전을 갱신하고 유지보수한다. ◈모든 데이터 사전 테이블은 SYS사용자가 소유한다. 이러한 테이블의 정보는 사용자가 이해하기 어렵기 때문에 직접 엑세스하는 경우가 드물다. ◈따라서 데이터 사전의 정보는 사용자가 이해하기 쉽게 데이터 서전 뷰라는 형태로 제공된다. ♣ Oracle7 데이터베이스 테이블 테이블 설 명 사용자 테이블 사용자가 만들고 사용하는 테이블 사용자가 입력한 정보를 저장한다. Data Dictionary Oracle이..