SQL> exit;
Disconnected from Oracle Database 11g Express Edition Release 11.2.0.2.0 - 64bit Production
C:\Users\hanul>sqlplus
SQL*Plus: Release 11.2.0.2.0 Production on 수 4월 8 15:29:20 2020
Copyright (c) 1982, 2014, Oracle. All rights reserved.
Enter user-name: hanul
Enter password: 0000
Connected to:
Oracle Database 11g Express Edition Release 11.2.0.2.0 - 64bit Production
SQL> create table tblMember( //tblMember 테이블 생성
2 num number, //num 필드 정수형
3 name varchar2(10), //name 필드 문자형(10자리)
4 age number, //age 필드 정수형
5 addr varchar2(50), //addr 필드 문자형(50자리)
6 tel varchar2(20) //tel 필드 문자형(20자리) ※ 마지막 라인은 쉼표 생략
7 ); //명령실행
Table created. //명령실행 후에 테이블 생성완료
SQL> desc tblMember; //tblMember 테이블 구조 출력
Name Null? Type
----------------------------------------- -------- ----------------------------
NUM NUMBER
NAME VARCHAR2(10)
AGE NUMBER
ADDR VARCHAR2(50)
TEL VARCHAR2(20)
SQL> insert into tblMember(num, name, age, addr, tel)
2 values(1,'홍길동',30,'광주시 서구 농성동','010-1111-1111');
//insert 명령을 이용하여 위의 값을 입력
//항목간의 구분은 쉼표, 문자열은 작은따옴표로 묶어준다.
//명령이 끝나면 반드시 세미콜론을 입력한다.
1 row created.
SQL> select num, name, age, addr, tel from tblMember;
//tblMember 테이블의 내용을 검색 후 출력
NUM NAME AGE ADDR TEL
------------------------------------------------------------------
1 홍길동 30 광주시 서구 농성동 010-1111-1111
SQL> commit; //메모리에 입력된 내용을 최종적으로 저장
Commit complete. //Rollback 명령을 사용할 수 없다.
SQL>
|
SQL> drop table tblMember; //tblMember 테이블 제거
Table dropped.
SQL> desc tblMember; //tblMember 테이블 구조 출력
ERROR:
ORA-04043: object tblMember does not exist
SQL> commit; //작업 내용을 최종적으로 저장
Commit complete.
SQL> exit //SQL 종료
Disconnected from Oracle Database 11g Express Edition Release 11.2.0.2.0 - 64bit Production
C:\Users\hanul>
|
○ Oracle SQL Developer 설치(SQL 통합개발도구)
- https://www.oracle.com 접속
- 상단 검색 창에 “SQL Developer” 입력
- Oracle SQL Developer Downloads > Windows 32-bit/64-bit 다운로드 후 압축해제
- sqldeveloper.exe 실행 > JDK 설치된 경로 설정
- 접속 창 > 접속 : 새 데이터베이스 접속
- 사용자 이름 : hanul
- 비밀번호 : 0000
- ☑ 비밀번호 저장
- 테스트 ▶ 상태 : 성공
- 저장
- 접속
|
- 행번호 토글 : 행번호 보이기, 도구 > 환경설정 : 글꼴 ▶ 글꼴 스타일 변경
- 코딩 후 실행 : 범위 지정 후 Ctrl + Enter 또는 F5
○ 데이터베이스 용어 정리
▶ 관계형 데이터 모델(RDBMS) : 자료의 저장 형태가 2차원 구조의 표(테이블)로 표현된다.
테이블명 : tblStudent ▶ 릴레이션 이름
|
학번
|
이름
|
주민번호
|
학과
|
학년
|
123456
|
홍길동
|
850408-1234567
|
컴퓨터공학과
|
4
|
156123
|
김길동
|
900501-2345678
|
정보통신공학과
|
2
|
173456
|
나길동
|
920821-1234567
|
전기전자공학과
|
1
|
용어
|
설명
|
내용
|
릴레이션
(Relation)
|
자료 저장의 형태가 2차원 구조의 표
(테이블)로 표현
|
tblStudent
|
속성
(Attribute)
|
릴레이션을 구성하는 각 열
(Column, 항목, Field)
|
학번, 이름, 주민번호, 학과, 학년의 각각 항목
|
튜플
(Tuple)
|
릴레이션의 한 행을 구성하는 속성들의 집합(Tuple, Row, Record)
|
학생 한명, 한명에 대한 속성 값
|
도메인
(Domain)
|
하나의 속성이 가질 수 있는 값의 범위
|
학년의 경우 1~4만 입력 가능
|
릴레이션 스키마
(Relation Schema)
|
릴레이션의 이름과 속성 이름의 집합
(릴레이션 구조)
|
학번, 이름, 주민번호, 학과, 학년의 집합
|
릴레이션 인스턴스
(Relation Instance)
|
릴레이션에 입력된 튜플들의 집합
|
입력된 레코드의 전체 집합
|
차수
(Degree)
|
릴레이션을 구성하는 속성(항목)의 수
|
5
|
카디널리티
(Cardinality)
|
릴레이션에 입력된 튜플(레코드)의 수
|
3
|
○ Oracle SQL 설치 시 주의사항
- 한글컴퓨터이름, 한글사용자명, 한글폴더 : 실행되지 않는 경우가 많다.
- 설치 시 암호설정(관리자 ID : system) ▶ 0000
- 사용자 등록(암호) : hanul(0000) ▶ DBA 권한 설정
- 환경설정파일 ▶ C:\oraclexe\app\oracle\product\11.2.0\server\network\ADMIN
listener.ora, tnsnames.ora : HOST(ip), PORT(1521), SERVICE_NAME(XE) ▶ 수정하지 말것!!!
- 컴퓨터 부팅 시 Oracle SQL 관련 프로그램이 구동되어야 한다 : 제어판>관리도구>서비스
# OracleServiceXE(DB관련), OracleXETNSListener(SQL관련) : 자동으로 구동
# oracle.exe, TNSLSNR.EXE : 작업관리자(Ctrl+Shift+ESC) > 자세히 > 세부정보 확인가능
○ Sql Developer에서 워크시트 추가하기
- 파일 > 새로만들기... > 데이터베이스 계층 > 데이터베이스 파일 ▶ 파일명, 저장위치
- Alt + F10 > 연결 계정 선택 ▶ 최종적으로 작업 완료 후에 저장
[SQL(Structured Query Language, 구조적 질의어) 문법] ▶ 20200409.sql
① DDL(Data Definition Language, 정의어)
- create(생성), drop(제거), alter(구조변경), truncate(데이터영구삭제)
② DML(Data Manipulation Language, 조작어)
- insert(삽입), delete(삭제), update(수정), select(검색)
③ DCL(Data Control Language, 제어어)
- grant(권한부여), revoke(권한해제), commit(완료), rollback(복원)
[DDL : 데이터 정의어]
① CREATE : 테이블을 생성
CREATE TABLE 테이블이름( //테이블 생성
컬럼이름1 데이터타입, //항목은 콤마로 구분
컬럼이름2 데이터타입,
컬럼이름3 데이터타입 //마지막 항목은 콤마 생략
); //세미콜론으로 마무리
|
- CHAR : 고정길이 문자열 ▶ CHAR(숫자)
- VARCHAR2 : 가변길이 문자열 ▶ VARCHAR2(숫자)
- NUMBER : 숫자(수치)데이터 ▶ NUMBER → 정수
▶ NUMBER(숫자1, 숫자2) → 정수 : 숫자1, 소수 : 숫자2)
- DATE : 날짜/시간 형식
② DROP : 테이블 제거(영구삭제)
DROP TABLE 테이블이름; //테이블 영구삭제
|
③ ALTER : 테이블의 구조를 변경
# 항목추가
ALTER TABLE 테이블명 ADD 추가할컬럼명 데이터타입;
# 항목변경(데이터타입 수정)
ALTER TABLE 테이블명 MODIFY (수정할컬럼명 데이터타입);
# 항목변경(컬럼명 수정)
ALTER TABLE 테이블명 RENAME COLUMN 기존컬럼명 TO 변경컬럼명;
# 항목삭제
ALTER TABLE 테이블명 DROP COLUMN 삭제할컬럼명;
|
|