목록분류 전체보기 (71)
craftmanager
INSERT INSERT명령어는 테이블 안에 데이터를 삽입하는 역할을 한다. INSERT 문법 INSERT INTO table_name(column1, column2,...) VALUES (데이터, '데이터',...); INSERT INTO table_name(column1, column2,...) SELECT column1, column2,... FROM table_name WHERE 조건; - 실제 데이터는 VALUES 괄호()안에 입력하고 문자열은 단일 따옴표(' ')로 둘러싼다. - 각각의 테이터 구분은 ","로 한다. - 테이블 이름 옆에 ()생략시에는 자동으로 모든 컬럼을 VALUES()안에 입력 시킨다. INSERT 예제 -- 모든 데이터를 입력할 경우 SQL> INSERT INTO emp ..
테이블 컬럼의 관리 테이블의 컬럼은 ADD, MODIFY, DROP연산자를 통해서 관리 할 수 있습니다. ADD 연산자 테이블에 새로운 컬럼을 추가 할 때 사용 한다. -- VARCHAR2의 데이터 형을 가지는 addr 컬럼을 emp 테이블에 추가 SQL> ALTER TABLE emp ADD (addr VARCHAR2(50)); MODIFY 연산자 테이블의 컬럼을 수정 하거나 NOT NULL컬럼으로 변경 할 수 있으며, 컬럼이 이미 테이터를 가지고 있을 경우 다른 데이터형으로 변경이 불가능 하다. -- ename 컬럼을 VARCHAR2 50자리로 수정한 예제. SQL> ALTER TABLE emp MODIFY (ename VARCHAR2(50)); SQL> ALTER TABLE emp MODIFY (en..
LOB, LONG, LONG RAW 데이터 타입의 비교 - 테이블의 한 ROW에 여러 LOB 컬럼이 있을 수 있는 반면, LONG 또는 LONG RAW 컬럼은 한 ROW에 하나 밖에 사용될 수 없다. - LOB는 사용자 정의 데이터 타입 (user-defined datatype)의 속성 (attribute) 으로 사용 될 수 있는 반면, LONG이나 LONG RAW는 속성으로 사용될 수 없다. - LONG 또는 LONG RAW는 값 전체가 테이블 내에 저장이 되는 반면, LOB는 테이블 컬럼내에 LOB locator만 저장이된다. BLOB과 CLOB (내부 LOB) 데이터는 별도의 테이블스페이스에 저장시킬 수 있으며, BFILE (외부 LOB) 데이터는 데이터베이스 외부의 별도 파일로 존재한다. 따라서 ..
- 관계형 데이터베이스에서 제공하는 데이터 타입은 대개 CHAR, VARCAHR2, NUMBER, DATE, LONG, RAW, LONG RAW, ROWID 타입으로 분류한다. - 원하는 정보를 가장 효율적으로 처리하기 위해서 적절한 데이터 타입의 선정이 필요 하다. - 적절하지 못한 데이터 타입은의 선정은 수행속도를 나쁘게 하고 불필요한 자원을 낭비를 가져온다. VARCHAR2 타입 - 가변길이 문자형 데이터 타입 - 최대 길이 : 2000 바이트(반드시 길이 지정) - 다른 타입에 비해 제한이 적다 - 일부만 입력시 뒷부분은 NULL - 입력한 값의 뒷부분에 있는 BLANK도 같이 입력 - 전혀 값을 주지 않으면 NULL 상태 입력 - 지정된 길이보다 길면 입력시 에러 발생 - 컬럼 길이의 편차가 심..
제약조건 (Constraint) 이란? 제약조건이란 테이블에 부적절한 자료가 입력되는 것을 방지하기 위해서 여러 가지 규칙을 적용해 놓는거라 생각하면 된다. 간단하게 테이블안에서 테이터의 성격을 정의하는 것이 바로 제약조건 이다. - 제약조건은 데이터의 무결성 유지를 위하여 사용자가 지정할 수 있는 성질 이다. - 모든 제약조건은 데이터 사전(DICTIONARY)에 저장 된다. - 의미있는 이름을 부여했다면 CONSTRAINT를 쉽게 참조할 수 있다. - 표준 객체 명명법을 따르는 것이 좋다. - 제약조건은 테이블을 생성할 당시에 지정할 수도 있고, 테이블 생성 후 구조변경(ALTER)명령어를 통해서도 추가가 가능하다. - NOT NULL제약조건은 반드시 컬럼 레벨에서만 정의가 가능하다. NOT NULL..
테이블은 실제로 데이터들이 저장되는 곳 이라고 생각하면 쉽게 이해 할 수 있으며, CREATE TABLE 명령어를 이용해서 테이블을 생성 할 수 있다. 테이블이란? - 테이블은 데이타베이스의 기본적인 데이타 저장 단위 이다. - 데이타베이스 테이블은 사용자가 접근 가능한 모든 데이타를 보유하며 레코드와 컬럼으로 구성 된다. - 관계형 데이타베이스가 아닌 예전의 데이타 베이스 용어에서는 파일과 테이블이, 필드와 컬럼이, 그리고 레코드와 행이 동일시 되었다. - 테이블은 시스템내에서 독립적으로 사용되길 원하는 엔티티를 표현할수 있다. 예를 들면, 회사에서의 고용자나 제품에 대한 주문은 테이블로 표현 가능하다. - 테이블은 두 엔티티간의 관계를 표현할 수 있다. 즉 테이블은 고용자와 그들의 작업 숙련도 혹은 ..
오라클 데이터베이스를 생성하면 기본적으로 몇 가지의 ROLE이 생성 된다. DBA_ROLES 데이터 사전을 통하여 미리 정의된ROLE을 조회 할 수 있다. SQL>SELECT * FROM DBA_ROLES; ROLE PASSWORD ---------------------- ----------- CONNECT NO RESOURCE NO DBA NO SELECT_CATALOG_ROLE NO EXECUTE_CATALOG_ROLE NO DELETE_CATALOG_ROLE NO EXP_FULL_DATABASE NO IMP_FULL_DATABASE NO .... -- 이 외에도 많이 ROLE이 존재하는데, 가장 많이 사용하는 세 가지만 설명 하겠다. CONNECT ROLE - 오라클에 접속 할 수 있는 세션 생성 ..

롤(ROLE) 이란 사용자에게 허가 할 수 있는 권한들의 집합 이라고 할 수 있다. 롤(ROLE) 이란? - ROLE을 이용하면 권한 부여와 회수를 쉽게 할 수 있다. - ROLE은 CREATE ROLE권한을 가진 USER에 의해서 생성 된다. - 한 사용자가 여러개의 ROLL을 ACCESS할 수 있고, 여러 사용자에게 같은 ROLE을 부여할 수 있다. - 시스템 권한을 부여하고, 취소할 때와 동일한 명령을 사용하여 사용자에게 부여하고, 취소 한다. - 사용자는 ROLE에 ROLE을 부여할 수 있다. - 오라클 데이터베이스를 설치하면 기본적으로 CONNECT, RESOURCE, DBA ROLE이 제공 된다. ROLE 생성 문법 CREATE ROLE role_name ROLE 부여 예제 ROLE의 부여 순..