01. Chapter1 Introduction(20081027)
DB & DBMS
- DMBS => Oracle, DB2...
- Data를 그냥 파일로 이용시 문제점(파일시스템 이용)
Data 갱신, 삽입 시 관련 코드 직접 코딩해야함
Data 공유 어려워짐(공유시 발생하는 문제 해결 위한 코드작성이 어려움)
Data 중복발생(2번의 공유 문제 발생시 파일데이터를 복사해서 사용)
Data 일관성 깨짐(Data 중복이 발생되면 데이터 수정 등의 작업시 각각의 데이터의 내용이 다름)
보안문제
- DBMS를 사용하면 위의 파일시스템 이용시 문제점 해결가능
Data 갱신, 삽입 문제 -> SQL로 해결
Data 공유 가능, 동시성문제 해결
사용자관리, 권한관리 등 이용한 보안문제 해결
E-R 그리기
- 기자재 E-R그리기
1. 조건
하나의 기자재는 한 연구실에서 관리한다.
한 연구실은 여러 기자재를 관리한다.
한명의 연구원은 한 연구실에만 소속될 수 있다.
하나의 연구실은 여러 연구원으로 구성된다.
한명의 연구원이 여러 기자재를 사용할 수 있다
하나의 기자재는 여러 연구원이 사용할 수 있다.
2. 필요한 attribute
기자재번호, 기자재이름, 기자재입고날짜,
기자재사용날짜, 기자재 사용 번호,
연구원 번호, 연구원 이름,
연구실 번호, 연구실 이름
SQLPLUS 사용 (P1-11)
- 콘솔창에서 sqlplus 실행 : sqlplus /nolog
-
C:\Documents and Settings\bitacademy>sqlplus /nolog
-
SQL*Plus: Release 10.1.0.2.0 - Production on 월 10월 27 15:46:49 2008
-
Copyright (c) 1982, 2004, Oracle. All rights reserved.
- 연결 : conn system/system (DB내의 system의 schema로 접속)
-
SQL> conn system/system
-
Connected.
- 테이블 목록보기(system 계정에 해당되는~)
-
SQL> SELECT table_name FROM tabs;
-
-
TABLE_NAME
-
------------------------------
-
MVIEW$_ADV_PARTITION
-
MVIEW$_ADV_INDEX
-
HELP
-
SQLPLUS_PRODUCT_PROFILE
-
REPCAT$_SITES_NEW
-
REPCAT$_EXTENSION
-
REPCAT$_INSTANTIATION_DDL
-
REPCAT$_EXCEPTIONS
-
REPCAT$_TEMPLATE_TARGETS
-
REPCAT$_RUNTIME_PARMS
-
REPCAT$_SITE_OBJECTS
-
-
TABLE_NAME
-
------------------------------
-
REPCAT$_TEMPLATE_SITES
-
REPCAT$_USER_PARM_VALUES
-
REPCAT$_OBJECT_PARMS
-
REPCAT$_TEMPLATE_PARMS
-
REPCAT$_TEMPLATE_OBJECTS
-
REPCAT$_TEMPLATE_REFGROUPS
-
REPCAT$_OBJECT_TYPES
-
REPCAT$_USER_AUTHORIZATIONS
-
REPCAT$_REFRESH_TEMPLATES
-
REPCAT$_TEMPLATE_TYPES
-
REPCAT$_TEMPLATE_STATUS
-
-
TABLE_NAME
-
------------------------------
-
REPCAT$_FLAVOR_OBJECTS
-
REPCAT$_AUDIT_COLUMN
-
REPCAT$_AUDIT_ATTRIBUTE
-
REPCAT$_PARAMETER_COLUMN
-
REPCAT$_RESOL_STATS_CONTROL
-
REPCAT$_RESOLUTION_STATISTICS
-
REPCAT$_RESOLUTION
-
REPCAT$_RESOLUTION_METHOD
-
REPCAT$_CONFLICT
-
REPCAT$_GROUPED_COLUMN
-
REPCAT$_COLUMN_GROUP
-
-
TABLE_NAME
-
------------------------------
-
REPCAT$_PRIORITY
-
REPCAT$_PRIORITY_GROUP
-
REPCAT$_REPGROUP_PRIVS
-
REPCAT$_DDL
-
REPCAT$_REPCATLOG
-
REPCAT$_REPPROP
-
REPCAT$_GENERATED
-
REPCAT$_KEY_COLUMNS
-
REPCAT$_REPCOLUMN
-
REPCAT$_REPOBJECT
-
REPCAT$_SNAPGROUP
-
-
TABLE_NAME
-
------------------------------
-
REPCAT$_REPSCHEMA
-
REPCAT$_FLAVORS
-
REPCAT$_REPCAT
-
LOGSTDBY$HISTORY
-
LOGSTDBY$SKIP_SUPPORT
-
LOGSTDBY$SKIP
-
LOGSTDBY$SKIP_TRANSACTION
-
LOGSTDBY$PLSQL
-
LOGSTDBY$SCN
-
LOGSTDBY$APPLY_MILESTONE
-
LOGSTDBY$EVENTS
-
-
TABLE_NAME
-
------------------------------
-
LOGSTDBY$PARAMETERS
-
DEF$_PUSHED_TRANSACTIONS
-
DEF$_ORIGIN
-
DEF$_PROPAGATOR
-
DEF$_TEMP$LOB
-
DEF$_LOB
-
DEF$_DEFAULTDEST
-
DEF$_CALLDEST
-
DEF$_DESTINATION
-
DEF$_ERROR
-
DEF$_AQERROR
-
-
TABLE_NAME
-
------------------------------
-
DEF$_AQCALL
-
AQ$_INTERNET_AGENT_PRIVS
-
AQ$_INTERNET_AGENTS
-
AQ$_SCHEDULES
-
AQ$_QUEUES
-
AQ$_QUEUE_TABLES
-
MVIEW$_ADV_PLAN
-
MVIEW$_ADV_JOURNAL
-
MVIEW$_ADV_INFO
-
MVIEW$_ADV_PARAMETERS
-
MVIEW$_ADV_EXCEPTIONS
-
-
TABLE_NAME
-
------------------------------
-
MVIEW$_ADV_OUTPUT
-
MVIEW$_ADV_ELIGIBLE
-
MVIEW$_ADV_CLIQUE
-
MVIEW$_ADV_GC
-
MVIEW$_ADV_FJG
-
MVIEW$_ADV_AJG
-
MVIEW$_ADV_ROLLUP
-
MVIEW$_ADV_LEVEL
-
MVIEW$_ADV_FILTERINSTANCE
-
MVIEW$_ADV_LOG
-
MVIEW$_ADV_FILTER
-
-
TABLE_NAME
-
------------------------------
-
MVIEW$_ADV_TEMP
-
MVIEW$_ADV_PRETTY
-
MVIEW$_ADV_SQLDEPEND
-
MVIEW$_ADV_BASETABLE
-
MVIEW$_ADV_WORKLOAD
-
MVIEW$_ADV_OWB
-
LOGSTDBY$APPLY_PROGRESS
-
LOGMNR_SESSION$
-
LOGMNR_RESTART_CKPT$
-
LOGMNR_ERROR$
-
LOGMNR_RESTART_CKPT_TXINFO$
-
-
TABLE_NAME
-
------------------------------
-
LOGMNR_AGE_SPILL$
-
LOGMNR_SPILL$
-
LOGMNR_PROCESSED_LOG$
-
LOGMNR_LOG$
-
LOGMNR_INDCOMPART$
-
LOGMNR_INDSUBPART$
-
LOGMNR_INDPART$
-
LOGMNR_LOBFRAG$
-
LOGMNR_ICOL$
-
LOGMNR_CCOL$
-
LOGMNR_CDEF$
-
-
TABLE_NAME
-
------------------------------
-
LOGMNR_LOB$
-
LOGMNR_ATTRIBUTE$
-
LOGMNR_COLTYPE$
-
LOGMNR_TYPE$
-
LOGMNR_TABCOMPART$
-
LOGMNR_TABSUBPART$
-
LOGMNR_TABPART$
-
LOGMNR_IND$
-
LOGMNR_TS$
-
LOGMNR_ATTRCOL$
-
LOGMNR_COL$
-
-
TABLE_NAME
-
------------------------------
-
LOGMNR_TAB$
-
LOGMNRC_GSII
-
LOGMNRC_GTCS
-
LOGMNRC_GTLO
-
LOGMNR_USER$
-
LOGMNR_OBJ$
-
LOGMNR_DICTIONARY$
-
LOGMNR_DICTSTATE$
-
LOGMNRC_DBNAME_UID_MAP
-
LOGMNR_UID$
-
LOGMNR_HEADER2$
-
-
TABLE_NAME
-
------------------------------
-
LOGMNR_HEADER1$
-
LOGMNR_SESSION_EVOLVE$
-
OL$NODES
-
OL$HINTS
-
OL$
-
137 rows selected.
- scott 계정 락 풀기
-
SQL> ALTER user scott account unlock;
-
User altered.
- scott 계정으로 다시 연결 및 비밀번호 변경
- SQL> conn scott/tiger
- ERROR:
- ORA-28001: the password has expired.
- // scott 계정 비밀번호 변경
- Changing password for scott
- New password:
- Retype new password:
- Password changed
- Connected.
- SQL> conn scott/tiger
- Connected.
- 테이블 목록보기(scott 계정에 해당되는~)
- SQL> SELECT table_name FROM tabs;
- TABLE_NAME
- ------------------------------
- SALGRADE
- BONUS
- EMP
- DEPT
- // 테이블 내용보기
- SQL> DESC emp;
- Name Null? Type
- ----------------------------------------- -------- ----------------------------
- EMPNO NOT NULL NUMBER(4)
- ENAME VARCHAR2(10)
- JOB VARCHAR2(9)
- MGR NUMBER(4)
- HIREDATE DATE
- SAL NUMBER(7,2)
- COMM NUMBER(7,2)
- DEPTNO NUMBER(2)
이 글은 스프링노트에서 작성되었습니다.