출처 : http://blog.naver.com/uxtrazom?Redirect=Log&logNo=140004793912

SQL/PLUS command
 

  EDIT SQL STATEMENT      

command

약어 command

목적

APPEND text

A text

라인의 끝에 text 추가

CHANGE /old/new

C /old/new

라인의 old부분을 new 교체

CHANGE /text

C /text

라인에서 text부분을 삭제

CLEAR BUFFER

CL BUFF

모든 라인들을 삭제

DEL


라인 삭제

INPUT

I

버퍼에 라인 이상을 추가

INPUT text

I text

text 구성되는 라인을 버퍼에 추가

LIST

L

SQL 버퍼안의 모든 라인을 list

LIST n

L n or n

n번째 라인을 list

LIST *

L *

현재 라인을 list

LIST LAST

L LAST

마지막 라인을 list

LIST m n

L m n

m부터 n까지의 라인들을 list

RUN


버퍼안의 내용을 실행

SAVE filename


버퍼의 내용을 filename으로 저장

GET filename


filename 버퍼로 가져옴

START filename

@filename

filename 내용을 실행

 
 

 
 
  filename .sql 형태 이어야 .  
 
 
  ORACLE 데이터베이스에 대한 데이터 보기  
  Oracle 데이터베이스에 대한 데이터, , 테이블 이름, 칼럼이름, 사용자 이름,   데이터베이스 오브젝트의 구조 등을 보기를 원할 . => Data Dictionary 대한 질의를 통해 가능  
  Oracle database내에 있는 테이블들     1) User Tables : 사용자에 의해 만들어지고 유지되는 테이블의 집합.   2) Data Dictionary : Oracle Server 의해 만들어 지고 유지되는 테이블들의   집합  
  DESCRIBE  
  - TABLE 구조를 보기위한 명령  
  형식   DESC table_name  
  예제   SQL> DESC student  
 
  현재 사용가능한 모든 table보기  
  - tab 이라는 테이블에서 현재 사용자가 사용가능한 모든 테이블들을 볼수 있음.  
  예제  
  SQL> SELECT * from tab;     TNAME TABTYPE CLUSTERID   ------------------------------ ------- ----------   TT TABLE    
  모든 사용자 object 보기  
  - user_objects 테이블에서 있음.  
    SQL> DESCRIBE user_objects  
  명칭 ? 유형   ------------------------------- -------- ----   OBJECT_NAME VARCHAR2(128)   OBJECT_ID NUMBER   OBJECT_TYPE VARCHAR2(13)   CREATED DATE   LAST_DDL_TIME DATE   TIMESTAMP VARCHAR2(75)   STATUS VARCHAR2(7)  
 
 
  user_objects 대한 질의 가능     Select object_name   From user_objects   where object_type='TABLE';  
 
 
SQL(Structured Query Language)
 

    1. SQL 데이터 정의문(DDL)  
  SQL 처리하는 대상 : 릴레이션=> 테이블   테이블 => 기본 테이블(base table), (view), 임시 테이블(temporary table)  
  기본 테이블의 생성(CREATE TABLE)  
  Not NULL   Primary Key   UNIQUE   REFERENCES  
  형식  
  CREATE TABLE table_name (   attr1 datatype [IS NULL],   attr2 datatype [IS NULL],   ...   constraint description   );  
 
  예제  
  CREATE TABLE STUDENT   (   NAME VARCHAR(10),   HAKBUN NUMBER(8),   DEPT VARCHAR(20),   ADDRESS VARCHAR(30),   EDAY DATE,   PRIMARY KEY(HAKBUN)   );  
  기본 테이블의 변경(ALTER TABLE)   기존의 테이블을 변경  
  ALTER TABLE STUDENT   ADD HighSchool VARCHAR(60);  
  ALTER TABLE STUDENT   MODIFY ( NAME VARCHAR2(20));  
  DROP TABLE STUDENT;   NOT NULL 사용할 없음  
 
  데이터 타입   - CHAR(n)   - VARCHAR2(n)   - NUMBER(n,f)   - LONG   - DATE  
  문자형(Character) 데이터 타입   Char Varchar2 Datatype Alphanumeric Data 저장.   Database Character set Database 생성할때 만들어지며 변경할 없다.  
  CHAR(n)   - 고정길이 문자열 저장   - 테이블 생성시 컬럼의 길이를 지정해 있으며   - 컬럼의 모든 값들은 지정한 길이를 가지고 저장된다.   - 삽입(INSERT) 값이 컬럼의 길이 보다 적으면 공백이   채워져 저장되고, 크면 오라클은 에러를 발생시킨다.   - DEFAULT 길이 : 1 byte   - 최대길이 : 255byte  
  VARCHAR2(n)   - 가변길이 문자열 저장   - 실제 입력된 데이타만 저장하므로 기억장소 절약하며 일반적으로 대부분의   자열 저장에 사용되며 가장 많이 사용된다.   - DEFAULT 길이 : 1 byte   - 최대길이 : 2000 byte  
  Varchar(n)   - Varchar2 Datatype 현재는 동일함.   - 향후 오라클에서는 다른 용도로 사용계획.(varchar2 사용하는 것이 향후에 유리  
 
 
  숫자형(Number) 데이터 타입   Fixed 또는 Floating-point number 저장.   임의 크기의 숫자를 저장할 있으며   정밀도(precision) 지정하지 않는 경우 열은 제공된 대로 값을 저장.   Scale 지정되지 않으면 0.   입력시에 무결성 검사   NUMBER, DECIMAL, INTEGER, REAL, DOUBLE PRECISION 지원   수치자료의 모든 형식은 오라클 수치 형식으로 동일하게 저장  
  NUMBER(n)   - 정수, 실수와 같은 숫자형 자료를 저장   - 정확도 : 38 자리   - 범위 : 1.0 * 10E-130 ~ 999 * 10E125   - 형식 : 컬럼이름 NUMBER (정확도[,스케일)]   - 스케일과 정확도의 사용   NUMBER 필드를 기술한 때에는 최대 자리수와 소수점의 위치를 기술하는   것이 좋다. 이것은 입력자료에 대한 별도의 무결성 체크를 제공한다. 값이   최대 정확도를 초과하면 에러가 발생하고, 값이 최대 스케일을 초과하면   올림된다.   column_name NUMBER (precision, scale)   - 음의 스케일   스케일이 음수라면 그것은 반올림할 자리를 의미한다. 예로써 (10,-2) 100   자리로 반올림하여 저장한다.   - 정확도 보다 스케일   사용되지 않지만 가능하다. 이경우 정확도는 소수점 뒤에 나오는 최대   자리수가 된다. 예를 들어 (4,5) 경우 소수점 뒤에 적어도 하나의 0   와야 한다.   - 지수형 표기 : 123456 1.23456E+5 , 0.0987 9.87E-2  
  INTEGER   - 정수형   - 최대 38자리를 저장할 있다.   - 형식 : [+|-] digit[digit...] [K/M]   - 유의사항 : K 1024, M 1048547 곱해진다K M INTEGER 수식에서   어디에서든 사용할 있다  
 
  날짜형(DATE) 데이터 타입   날짜와 시간에 대한 정보를 저장   저장되는 정보는 세기...... 이며 7 byte 차지한다   시간 자료는 24시간 형식으로 저장된다   DATE 필드에 대한 디폴트 날짜 : 그날의 A.M. 12:00:00   표준 오라클 DATE 형식은 DD-Mon-YY 이나 한글화로 인해 YY/MM/DD 등으로   표준 형식을 변경할 있다  
  DATE 계산   - DATE 데이타 타입의 자료는 곱셈이나 나눗셈 연산은 없음.   - 덧셈과 나눗셈은 가능하다.   - example)   SYSDATE+1 내일이며   SYSDATE-7 한주전이다 또한   EMP 테이블의 HIREDATE에서 SYSDATE 빼면 입사후 지금까지의 날수를   얻을 있다.  
  SYSDATE   - 함수는 현상태의 날짜와 시간을 구해준다   - example)   SELECT SYSDATE   FROM DUAL;  
  오라클은 DATE 데이타 타입의 연산을 위해 다양한 함수를 제공   - ADD MONTHS : DATE 데이터 타입자료의 부분을 더하거나 있다.   - MONTH BETWEEN : 두개의 날짜 사이의 달수를 계산한다.   - TO_DATE 함수로 표시 형식을 바꿀 있으며 DATE 항목에 시간을 입력하려면   TO_DATE 함수를 이용해야 한다   - example)   SELECT   TO DATE('13-NOV-85 10:56 A.M.', 'DD-Mon-YY HH:MI A.M.')   FROM DUAL;   - SQL TRUNC 함수로 시간 표시 부분을 무시하고 날짜들을 비교할 있음.   - 율리우스 (Julian Dates)   오라클은 BC. 4712 1 1일을 기준으로 계산하는 율리우스력을 지원한다.   - example)   SELECT   TO_CHAR(TO_DATE('-1-JAN-89'),'J')   FROM DUAL;   LONG 데이타 타입   - 가변적인 길이의 문자열을 2 GigaBytes 까지 저장.   - 텍스트 문지열을 저장하기 위해 사용.   - LONG 컬럼은 정의에 대한 텍스트를 저장하기 위해 데이타 사전안에서   사용되고 있다.   - SELECT 리스트, UPDATE 문장의 SET , INSERT 문장의 VALUE 등에서   LONG 컬럼을 사용할 있다.   - 테이블에서 하나의 LONG 컬럼만이 허용된다. LONG 컬럼은 사용상 부가적으   약간의 제한이 있다.  
  RAW LOGN RAW 데이타 타입   - 2 자료나 2 스트링에 대해 사용되며 문자열, 부동 소수점 자료, 그래픽   이미지, 디지타이즈 음향 등을 저장한다.   - 가변적인 길이의 2 데이타를 RAW 2000 byte 까지, LONG RAW   2 GigaByte 까지 저장한다.   - 데이타타입을 표시할 때는 16 문자로써 표시한다.  
  ROWID   - ROWID 데이타베이스의 모든행과 연관된 의사 컬럼으로 행의 주소.   - 주소는 예약어인 ROWID 질의하여 16진수 형태로 나타낼 있다.   - ROWID 3 부분을 리턴하며 정보를 이용하여 행의 저장 위치 결정에   필요한 모든 것을 있으며 각각은 아래와 같다.     1 번째 부분 : 데이타베이스 파일 안의 블럭 위치   2 번째 부분 : 블럭안의 위치 (첫행은 0)   3 번째 부분 : 데이타베이스를 구성하는 파일 번호 (최초 파일은 1)  
  - INDEX 등에서 ROWID 값을 저장하기 위해서는 6 bytes 필요하다.   - example)   SQL> SELECT ROWID FROM emp;     ROWID   ------------------   00000003.0000.0007   00000003.0001.0007   00000003.0002.0007  
  3 rows selected.   NULL   - 행의 특정컬럼의 값이 없으면 값은 NULL이라고 .   - 테이블 생성시 NOT NULL 이 게시물을..