일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | ||
6 | 7 | 8 | 9 | 10 | 11 | 12 |
13 | 14 | 15 | 16 | 17 | 18 | 19 |
20 | 21 | 22 | 23 | 24 | 25 | 26 |
27 | 28 | 29 | 30 |
- sqld remame
- java Fish
- JAVA 연산자
- java
- SQLD 자격시험 개념정리
- sqld 자격증
- java 구구단
- Java Cat
- Java 메소드
- PLSQL
- java 성별
- sqld deny
- JAVA 제어문
- sqld 옵티마이져
- JAVA for문
- sqld grant
- java 상속
- java string
- SQLD 특강
- java 단축키
- java 함수
- SQLD 옵티마이저
- SQLD 핵심포인트
- java 논리연산자
- sqld revoke
- java Animal
- java 로또
- sqld trigger
- java spider
- SQL
- Today
- Total
SQLD, ECLIPS, JAVA,PYTHON, NODE....
[Oracle] SQL Class 3 - SQL 명령어 및 테이블/계정 생성 본문
2023.10.27
## SQL 명령어
1. SQL : Structured Qurey Launage
** SQL 명령어 구분
1) DDL(Data Definition Launage, 데이터 정의명령)
※ 명령어 사용대상: 객체 ex. 테이블, 유저명, index(문자) ..
: creat(생성), alter(수정), drop(배제)
rename(이름변경), truncate(자르다)
(예제1) 테이블 생성
SQL> create table info(id number(3), name varchar2(10), tel_varchar2(15);

(예제2) 테이블 수정
SQL> alter table info
2 add addr varchar2(30);

(예제3) 테이블 유형명 변경
SQL> alter table info
2 modify name varchar2(20);

(예제4) 컬럼 삭제
SQL> alter table info
2 drop column tel;

(예제5) 테이블 삭제
SQL> drop table info;

tab --> table의 약어
SQL> select *from tab;

## 관리자 계정 접속
SQL> conn /as sysdba

## 계정 생성
SQL> create user aiden identified by aiden default tablespace users;

## 일반계정에선, grant( 권한부여 명령어 )로 2가지(connect, resource)권한 제공 가능.
SQL> conn aiden/aiden
SQL> conn /as sysdba

행(row)의 주소확인 방법
# rowid --> emp 테이블의 행(row)별로 주소확인 명령어.
SQL> select rowid from emp;

테이블에 등록된 행별로 rownum 순서확인
SQL> select rownum from emp;

rownum는 특정값으로 확인되는 데이터가 아님
SQL> select rownum from emp
2 where rownum<5;

(예제6) 이름이 A_로 시작하는 사람 추출하시오.
SQL> select ename from emp
2 where ename like 'A$_%' escape '$'; -- $같은 특수문자를 넣고, escape에서 추가한 특수문자를 넣고 실행하면, A_ 로 시작하는 데이터 추출가능

결과값이 없으므로 선택된 레코드가 없음.
(예제7) 업무(job)의 종류를 추출
SQL> select distinct job from emp -- distinct는 뒤에 오는 컬럼명을 추출하는 명령어
ㄴ중복제거 함수

## DML(Data Manipulation Launage, 데이터 내의 정보변경 명령)
ㄴ 데이터 변경명령(트렌잭션, 데이터 흐름수정 명령)
※ 명령어 사용대상: 객체를 구성하는 데이터(=행)만 변경
: insert(입력), update(수정), delete(삭제)
select(추출 - oracle에선 추출하는 명령)
## DCL(데이터 권한관리 명령)
※ 권한: 단어(role)는 권한들을 모아둔거 이며, 명령을 묶어둔거 ex. sysdba (sys는 권한들을 묶어둔거)
단, 기본권한은 누적되어 부여되지만, deny를 주는 순간 권한이 거부됨(최우선 명령어)
: grant(부여), revoke(회수), deny(거부, oracle엔 없고 MSSQL엔 있음)
## TCL(Transaction 제어(데이터 흐름제어(정보변경))명령)
ㄴ DML을 제어하는 명령
: commit(저장), roolback(취소), savepoint(저장지점, save)