IT 전용글/Oracle

2009 02 15 주말 ~

회상형인간 2009. 2. 15. 13:44


Select * From user_tables;

Select * From all_tables;

Select * From dba_tables; // sys 로그인이 되어야 나옴.


select object_name , object_type
from user_objects
where object_name='c8';  // 동봉한 이미지파일 참조.

select view_name from dba_views
where view_name like '%SESSION%'  // 출력 결과 확인.

select view_name from dba_views
where view_name like Upper('%&key%')  // 출력 결과 확인.



grant select on emp to hr; // hr 이라는 유저에게 emp 테이블의 select 권한을 준다.

revoke select on emp from hr; // hr 이라는 유저에게 emp 테이블의 select 권한을 뺃는다.

Select * From session_privs ;// 권한 확인.


grant create any table to scott;

conn scott/tiger

create table hr.c8(idx number(2));//성공

conn /as sysdba ;

revoke create any table from scott;


select * from session_privs;



Create user u1 identified by u1;// u1 유저생성
grant create session to u1; // 접속 권한
grant create table to u1;// 테이블 생성 권한
alter user u1 quota 10m on users;// 계정용량 (10메가까지)

create user u2 identified by "1"
quota 10m on users;
grant create session , create table , create view , create sequence , create procedure to u2;



롤 생성
create role myuser;
grant myuser to u3;




create table emp5 as select * from emp;

 alter table emp5 add
 constraint emp5_fk foreign key(deptno)
 references dept(deptno)
 deferrable initially deferred;//교차 조인 되어있는 테이블~응?


Select * from user_constraints;
//내용 확인후 삭제 할것을 삭제
alter table emp5 drop constraint  emp5_fk;

// 제약 조건 일지 정지 응?
alter table emp disable constraint PK_EMP;
제약 조건없이 마구마구 입력 가능.

// 다시 풀었을때
alter table emp enable constraint pk_emp;

에러;;

select empno from emp group by empno  having count(*) >1;

select * from emp where empno = 18;

나온것들을 지우거나 시퀀스 사용해서 update 작업이 필요하다.
( 제약조건은 중복 불가의 프라이머리 키이기때문이다)...







## Flash Bag
  drop table emp2 ;
  flashback table emp2 before drop ; // 휴지통에 있는 emp2 테이블을 복구시킨다.
 


 







DSS(의사 결정 지원)

DW (data warehouse)


Data 수집 -> external table

Data 분류  -> 3장

Data 분석   -> 4장

Report -> 4장