학원수업 자료2009. 11. 3. 17:53

 

SQL(Structured Query Languge)
1. 기본적인 구조
  - SELECT col1, col2… | * 
  - FROM  table1, table2
  - [WHERE]  조건절
  - GROUP BY
  - HAVING
  - ORDER BY
oracle
리눅스 표시>
  - # : root
  - $ : 일반유저
IP 주소 설정방법>
[oracle@ocp ~]$ . .bash_profile
ocp@orcl : /home/oracle> su -
Password: oracle
[root@ocp ~]# setup
  - network configuration 선택
  - [YES] 선택
  - 다음을 차례대로 입력
IP : 192.168.100.100
sub : 255.255.255.0
gate : 192.168.100.1
DNS: 168.126.63.1
  - [OK] 클릭
  - [Quit] 클릭
[root@ocp ~]# /etc/init.d/network restart
IP 연결 확인 방법>
1. Oracle 연결 확인
[root@ocp ~]# ping 192.168.100.1
  - 64 bytes.. 로 표시되면 성공
2. 인터넷 연결 확인
[root@ocp ~]# ping 211.183.0.254
  - 64 bytes.. 로 표시되면 성공
관리자 접속>
  - 최초 실행 시 [$ . .bash_profile]를 반드시 먼저 실행한다.
[oracle@ocp ~]$ . .bash_profile
ocp@orcl : /home/oracle> sqlplus / as sysdba            >> 관리자접속
SQL*Plus: Release 10.2.0.1.0 - Production on Mon Nov 2 11:19:38 2009
Copyright (c) 1982, 2005, Oracle.  All rights reserved.
Connected to an idle instance.
DB Start>
SQL> startup        >> DB start
ORACLE instance started.
Total System Global Area  167772160 bytes
Fixed Size                  1218292 bytes
Variable Size              62916876 bytes
Database Buffers           96468992 bytes
Redo Buffers                7168000 bytes
Database mounted.
Database opened.
SQL 종료 방법>
EXPERT> exit
리눅스 종료 방법>
ocp@orcl : /home/oracle> poweroff
isqlplus 실행 방법>
  - 터미널 새창 연 뒤 다음을 차례대로 입력한다.
[oracle@ocp ~]$ . .bash_profile
ocp@orcl : /home/oracle> isqlplusctl start
VI 편집기 사용 방법>
  - sql문장 실행
  - ed 입력 -> i입력(입력 시작) -> 쿼리문 수정 -> esc 키 입력(입력 해제)
  - :wq (저장 후 종료)
  - :! (강제 종료)
  - ed에서는 ;를 입력하지 않는다.
환경변수 변경파일 들어가는 법>
ocp@orcl : /home/oracle> vi $ORACLE_HOME/sqlplus/admin/glogin.sql
사용법은 vi 편집기와 동일
1. 사용자 명으로 커서가 보이게 설정
  - set sqlprompt "_user> " 를 입력
사용자 확인>
SQL> show user
USER is "SYS"
사용자 생성>
SQL> create user expert identified by expert;
User created.
SQL> grant connect, resource, create view to expert;
Grant succeeded.
사용자 변경>
SQL> connect expert/expert
Connected.
관리자로 변경>
EXPERT> connect sysdba
Enter password:  >> password는 as sysdba
저장된 sql 파일 실행>
SQL> @/파일경로/파일명
파일 복사>
ocp@orcl : /home/oracle> cp /mnt/hgfs/shared/creuser.sql ./                  >>파일 복사
파일 목록 확인(dir명령어와 같음)>
ocp@orcl : /home/oracle> ls
afiedt.buf  creuser.sql  Desktop  sqlnet.log
실습시 사용되는 테이블의 컬럼>
TNAME                          TABTYPE  CLUSTERID
------------------------------ ------- ----------
COUNTRIES                      TABLE
REGIONS                        TABLE
LOCATIONS                      TABLE
DEPARTMENTS                    TABLE
JOBS                           TABLE
EMPLOYEES                      TABLE
JOB_HISTORY                    TABLE
EMP_DETAILS_VIEW               VIEW
JOB_GRADES                     TABLE
9 rows selected.
SQL> desc countries
 Name                                      Null?    Type
 ----------------------------------------- -------- ----------------------------
 COUNTRY_ID                                NOT NULL CHAR(2)
 COUNTRY_NAME                                       VARCHAR2(40)
 REGION_ID                                          NUMBER
SQL> desc regions
 Name                                      Null?    Type
 ----------------------------------------- -------- ----------------------------
 REGION_ID                                 NOT NULL NUMBER
 REGION_NAME                                        VARCHAR2(25)
SQL> desc locations;
 Name                                      Null?    Type
 ----------------------------------------- -------- ----------------------------
 LOCATION_ID                               NOT NULL NUMBER(4)
 STREET_ADDRESS                                     VARCHAR2(40)
 POSTAL_CODE                                        VARCHAR2(12)
 CITY                                      NOT NULL VARCHAR2(30)
 STATE_PROVINCE                                     VARCHAR2(25)
 COUNTRY_ID                                         CHAR(2)
SQL> desc departments
SQL> desc departments;
 Name                                      Null?    Type
 ----------------------------------------- -------- ----------------------------
 DEPARTMENT_ID                             NOT NULL NUMBER(4)
 DEPARTMENT_NAME                           NOT NULL VARCHAR2(30)
 MANAGER_ID                                         NUMBER(6)
 LOCATION_ID                                        NUMBER(4)
SQL> desc jobs
 Name                                      Null?    Type
 ----------------------------------------- -------- ----------------------------
 JOB_ID                                    NOT NULL VARCHAR2(10)
 JOB_TITLE                                 NOT NULL VARCHAR2(35)
 MIN_SALARY                                         NUMBER(6)
 MAX_SALARY                                         NUMBER(6)
SQL> desc employees;
 Name                                      Null?    Type
 ----------------------------------------- -------- ----------------------------
 EMPLOYEE_ID                               NOT NULL NUMBER(6)
 FIRST_NAME                                         VARCHAR2(20)
 LAST_NAME                                 NOT NULL VARCHAR2(25)
 EMAIL                                     NOT NULL VARCHAR2(25)
 PHONE_NUMBER                                       VARCHAR2(20)
 HIRE_DATE                                 NOT NULL DATE
 JOB_ID                                    NOT NULL VARCHAR2(10)
 SALARY                                             NUMBER(8,2)
 COMMISSION_PCT                                     NUMBER(2,2)
 MANAGER_ID                                         NUMBER(6)
 DEPARTMENT_ID                                      NUMBER(4)
SQL> desc job_history
 Name                                      Null?    Type
 ----------------------------------------- -------- ----------------------------
 EMPLOYEE_ID                               NOT NULL NUMBER(6)
 START_DATE                                NOT NULL DATE
 END_DATE                                  NOT NULL DATE
 JOB_ID                                    NOT NULL VARCHAR2(10)
 DEPARTMENT_ID                                      NUMBER(4)
SQL> desc emp_details_view;
 Name                                      Null?    Type
 ----------------------------------------- -------- ----------------------------
 EMPLOYEE_ID                               NOT NULL NUMBER(6)
 JOB_ID                                    NOT NULL VARCHAR2(10)
 MANAGER_ID                                         NUMBER(6)
 DEPARTMENT_ID                                      NUMBER(4)
 LOCATION_ID                                        NUMBER(4)
 COUNTRY_ID                                         CHAR(2)
 FIRST_NAME                                         VARCHAR2(20)
 LAST_NAME                                 NOT NULL VARCHAR2(25)
 SALARY                                             NUMBER(8,2)
 COMMISSION_PCT                                     NUMBER(2,2)
 DEPARTMENT_NAME                           NOT NULL VARCHAR2(30)
 JOB_TITLE                                 NOT NULL VARCHAR2(35)
 CITY                                      NOT NULL VARCHAR2(30)
 STATE_PROVINCE                                     VARCHAR2(25)
 COUNTRY_NAME                                       VARCHAR2(40)
 REGION_NAME                                        VARCHAR2(25)
SQL> desc job_grades
 Name                                      Null?    Type
 ----------------------------------------- -------- ----------------------------
 GRADE_LEVEL                                        VARCHAR2(3)
 LOWEST_SAL                                         NUMBER
 HIGHEST_SAL                                        NUMBER



Posted by 쿵캉켕