데이터베이스 0624
디비안에 데이타는 공유데이타, 통합데이타 , 저장데이타 ,운영데이타 이다
I=P(D)
PROCESSOR -- 함수, 메서드 , 처리기
처리하는 과정을 프로세싱이라고 부른다
DATA --데이타 ANALIST
프로세서 - 개발자
INFORMATION -- 정보 관리자
데이터 베이스의 특징
주소값으로 찾아가지 않고 내용으로 찾아간다
실시간 접근성
지속적인 변환
동시 공유
데이터베이스 구조
1.논리적구조 : 논리적데이터베이스 -> 사용자 입장
2.물리적 구조: 물리적데이터베이스 -> 실제 저장 구조
DDL --객체(테이블, 뷰 , 시놈 , 사용자 , 트랜젝션)을 조작하는 언어
ALTER
CREATE
DROP
RENAME
TRUNCATE -걔와 연결된 객체까지 다 날릴때 사용
DML- 데이터를 조작하는 언어
INSERT
UPDATE
DELETE
SELECT(QL 포함)
DCL- 트랜잭션 관리를 위한 언어
-REVOKE 권한 준거를 다시 회수하는것
-GRANT
TCL-(트랜잭션 제어)
COMMIT
Rollback
SavePoint
트랜잭션 -- 한번 실행된 명령어는 끝날때까지 수행되는 태스크()
한번 시작한 작업(명령단위)운 반드시 실행 완료
insert 시에 date 형식에 값 입력시 주의 할점
insert into emp01 values(3 ,'신영수','2015-06-11',10000); 앞뒤에 ' ' 표시
insert into emp01 values(4 ,'고영영수',sysdate,10000); insert 시에는 sysdate 를 써주는 경우
sqlplus sys/change_on_install as sysdba;
grant 는 누군가에게 권한을 주는거니깐 to 이고
revoke는 누군가로부터 권한을 뺏는거니깐 from 이다.
resource 롤 -- 사용자가 객체(테이블 , 뷰 , 인덱스 ) 를 생성할 수 있도록 시스템 권한을 묶어 놓았습니다.
리소스를 안주고 table 생성할려고 하면 권한이 없어서 생성이 안된다 .
모든 제약조건은 데이터사전에 들어가있다 .
unique(uk) -테이블의 모든 행을 유일하게 식별하는 값을 가진 열
check(ck) - 참이어야 하는 조건을 지정함 이렇게 지정해놓으면 인서트시 내가 원하는 조건이 아니면 못넣는다 .
해당 테이블 제약 조건 보는것-SELECT CONSTRAINT_NAME FROM USER_CONSTRAINTS WHERE TABLE_NAME='EMP01';
틀린 부분 ****************************
튜플(row)의 개수는 cardinality 라고 한다 .
data를 자료라고 한다 .
*********************************
프라이머리키 를 넣어서 테이블 생성 할때
create table emp3(
no varchar2(10) primary key,
irum varchar(20) not null
)
[출처] Day 41. DataBase - SQL과 PL/SQL(5) |작성자 이제이
계정: student를 새로 생성하여
아래에 나열된 요구에 맞추어 쿼리문을 작성하시고
작업결과물을 캡쳐하여 답글로 제출하여 주세요.
1. student계정 생성 및 권한 부여
2.테이블 생성
EDUCATION 테이블 (
PID (PK ) 숫자 3
학생이름
학과명
나이
과목ID);
3. 데이터 입력: (111,'서강미','컴공',20,' D12');
(222,'이유미','컴공',20,' D12');
(333,'지거미','컴공',20,' D12');
(444,'마개미','컴공',20',' D12');
4. 테이블 수정
EDUCATION 테이블에 학과명 컬럼을 학과이름으로 수정하여 주십시오.
EDUCATION 테이블에 과목이름 컬럼을 추가하여 수정하여 주십시오.
컬럼명은 한글이 아닌 논리적인 영문이름으로 지정하여 주십시오.
create user student identified by 123;
grant connect,resource,create session to student;
create table education(
pid number(3) primary key,
edu_stu_name varchar2(20),
majo_name varchar2(10),
old number(3),
majo_id number(4)
);
insert into education values(111,'서강미' , '컴공' ,'20', 'D12');
insert into education values (222,'이유미','컴공','20','D12');
insert into education values(333,'지거미','컴공','20','D12');
insert into education values(444,'마개미','컴공','20','D12');
alter table education modify (old varchar2(3));
alter table education modify (majo_id varchar2(3));
alter table education add(e_name varchar2(15));
alter table education rename column majo_name to m_name;