[DB] 아빠도 따라하는 오라클 데이터베이스 2일차

2013. 2. 21. 09:58Information Technology/Database

2월 20일 수요일 Oracle SQL 강의

 

 

 

 

시작 à 모든프로그램 à Oracle Database 11g Express Edition à Run SQL Command Line 실행

 

SQL> create user scott identified by tiger;     //user 생성

 

User created.

 

SQL> grant dba to scott;     //권한 부여

 

Grant succeeded.

 

SQL> alter user hr identified by hr;     //기존 user 비번 변경

 

User altered.

 

SQL> alter user hr account unlock;     //계정 unlock

 

User altered.

 

SQL> conn hr/hr; //접속 아이디/비번 (무조건 제일 먼저 연결을 해줘야 함.)

Connected.

 

SQL> select table_name from tabs; //tabs라는 table에서 table_name Attribute(칼럼) 선택

 

 

명령문 작성한 후 ;(세미콜론)에 커서를 두고 Ctrl + Enter하면 명령문이 실행됨.

 

데이터베이스 관리 시스템의 장점

- 데이터의 중복성과 불일치성 감소

- 데이터 보안

- 질의 처리에 효율적인 저장 구조

- 백업과 복구

- 다양한 인터페이스

- 일관된 데이터를 유지

 

데이터베이스 관리 시스템의 단점

- 자원이 많고 복잡하며 비싸다.

 

데이터베이스 스키마(Schema)

- 데이터베이스의 구조제약조건에 대해서 분명하고 자세하게 기술한 것

- 구체적으로 데이터베이스를 구성하는 Attribute와 Relation 등의 집합

 

데이터베이스 언어

- 데이터베이스를 정의하고 모든 저장 데이터베이스의 접근을 지원하는 통신 수단

1. 데이터 정의어 (Data Definition Language)

2. 데이터 조작어 (Data Manipulation Language)

3. 데이터 제어어 (Data Control Language)

 

 

 

 

 

파일 : 레코드들의 집합

 

 

9장 pdf

SQL (Structured Query Language)

- 데이터베이스에 접근할 때 사용하는 언어

- 크게 DCL, DML과 DDL로 나눌 수 있다.

 

 

DML

- 데이터의 조회: SELECT

- 데이터의 삭제: DELETE

- 데이터의 저장: INSERT, UPDATE

 

COMMIT 문

- 데이터 변경 작업(INSERT, UPDATE, DELETE)을 한 뒤, COMMIT을 실행하면 변경된 데이터들이 데이터 파일에 반영된다.

 

ROLLBACK 문

- COMMIT 의 반대.

 

DDL

- 데이터베이스 객체(테이블)들을 생성 : CREATE
- 생성된 객체(테이블)들을 삭제 : DROP

- 기존에 생성된 객체를 변경 : ALTER

- DELETE와 동일하지만 ROLLBACK을 할 수 없음 : TRUNCATE

hr DB에서 scott DB로 테이블 복사 이동시키기

 

 

새로고침을 눌러주면 복사된 것이 반영된다.

 

 

 

 

 

 

 

 

 

쿼리문을 쓸 수 있는 SQL 워크시트는 마우스 오른쪽àSQL워크시트열기를 하면 된다.

 

쿼리문으로는 아래처럼 작성하여 실행하면 scott에 employee 테이블이 복사된다.

scott워크시트라 scott.emp2대신 emp2라고만 써도 된다.

 

테이블의 Attribute 수정하기

 

 

 

SELECT 문

 

 

 

 

Table 안에 을 의미할 땐 ' ' ß 작은 따음표로 써야한다.

숫자는 그냥 숫자만 써도 된다. 따음표 처리 안해도 된다.

As를 사용하여 별칭 쓸때는 " "ß큰 따음표로 처리하던가 생량해도 된다.

 

where empno in (7499,7788) = where empno = 7499 or empno = 7788

 

where empno like 'A%' // A로 시작하고 뒤에 어떠한 단어가 있을 경우

where empno like 'MILE_' //한글자

 

 

함수(function)

- 특정 기능을 수행

- Data에 대한 계산을 수행

- Data를 다른 형태로 변환

 

 

3번째 문자부터 2글자까지 보여줌.

round 반올림, floor 버림, ceil 올림.

 

round(숫자, 소수몇번째까지) 즉, 두번재 숫자가 1이면 2번째자리에서 반올림하여 소수1번째자리까지 보여줌.

 

to_char는 임의의 데이터를 문자형 데이터 타입으로 변경시켜 줌.

문자형 포맷은 책 p312에 표로 나옴. Ex) 'YYYY:MM:DD'

 

 

 

 

 

 

 

DDL(데이터 정의어)

- CREATE table

: 테이블 생성

: 테이블 이름, 칼럼 이름, 칼럼의 데이터 타입과 크기 반드시 명시해야 함.

 

- create table test(id number(3) primary key, name varchar2(10) not null);

 

 

desc table1; //테이블 구조를 알려고 할 때

 

 

 

sql 파일로 적혀 있는 쿼리문을 실행시키는 방법