달력

4

« 2024/4 »

  • 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
.. .. ..

테이블

SELECT A.SEGMENT_NAME,
              ROUND(SUM(A.BYTES)/1024/1024) "SIZE_MB",
              A.SEGMENT_TYPE
FROM DBA_SEGMENTS A,
            DBA_TABLES B
WHERE A.SEGMENT_NAME = B.TABLE_NAME
      AND A.SEGMENT_TYPE IN ('TABLE','TABLE PARTITION')
      AND A.OWNER = '계정(id)'
GROUP BY A.SEGMENT_NAME, A.SEGMENT_TYPE
ORDER BY 2 DESC;

 

인덱스
SELECT A.SEGMENT_NAME,
              ROUND(SUM(A.BYTES)/1024/1024) "SIZE_MB",
              A.SEGMENT_TYPE
FROM DBA_SEGMENTS A,
            DBA_INDEXES B
WHERE A.SEGMENT_NAME = B.INDEX_NAME
      AND A.SEGMENT_TYPE IN ('INDEX','INDEX PARTITION')
      AND A.OWNER = '계정(id)'
GROUP BY A.SEGMENT_NAME, A.SEGMENT_TYPE
ORDER BY 2 DESC;

 

.
:
Posted by .07274.
.. .. ..

--1. 오라클 설치

 

--2. 오라클 시스템 계정으로 로그인

-- > sqlplus "/as sysdba"

 

--3.테이블 스페이스 생성

CREATE TABLESPACE ICMS_DAT_TS
         DATAFILE 'C:/app/Administrator/oradata/orcl/DNFM01.dbf'
         SIZE 100M
         AUTOEXTEND ON
         NEXT 100M
         MAXSIZE 500M ;

 

--4. 임시 테이블 스페이스 생성

CREATE TEMPORARY TABLESPACE ICMS_DAT_TS_TEMP
TEMPFILE 'C:/app/Administrator/oradata/orcl/DNFM01_TEMP.dbf'  SIZE 100m;


--5.사용자 생성

create user DNFM identified by DNFM2012
default tablespace ICMS_DAT_TS
temporary tablespace ICMS_DAT_TS_TEMP;

 

--6.권한 주기

grant connect, resource , dba to DNFM;

 

--7.인덱스 테이블 스페이스 생성

CREATE TABLESPACE ICMS_IDX_TS

DATAFILE 'C:/app/Administrator/oradata/orcl/DNFM01_INDEX.dbf'
SIZE 10M
AUTOEXTEND ON
NEXT 10M
MAXSIZE 200M ;

 

 

.
:
Posted by .07274.
.. .. ..

오라클에서 테이블 스페이스를 생성하면 생성시 준 옵션 (파일 사이즈, 경로 등)을 가지고

데이터 파일을 만든다.

 

이후 테이블을 생성할때 테이블 스페이스를 잡아주면 그 파일명에 테이블이 생기게 된다.

 

만약 유져를 생성할때 디폴트 테이블 스페이스를 잡아주면 그 유져가 테이블을 생성할때 따로

테이블 스페이스를 잡아주지 않더라도 디폴트 테이블 스페이스 영역으로 테이블이 생성된다.

 

만약 유저 생성시 디폴트 테이블 스페이스를 잡아주지 않았다면 오라클의 기본인

시스템 테이블 스페이스에 생성이 되게 된다. 뭐 이에 대한 문제점은.. 레퍼런스를 보던가 하면 되겠지만

 

안좋겠지 라는 생각으로 결말지음..

내게 필요한건 개념이었으니..

 

 

도움되었다면 댓글을 남겨주세요~! 아님 도움말을 더 숑숑 달던가요 ㅎㅎ

.
:
Posted by .07274.
.. .. ..

테이터를 넣어야할 테이블에

값이 이미 있으면 Update

값이 없으면 Insert

MERGE INTO table_name alias --테이블 명만 올수 있음(셀렉트 쿼리 No)
USING (table|view|subquery) alias --일반적으로 쓰는 쿼리 Ok
ON (join condition) --where 절이라고 생각하면됨(조건에 서브 OK)
WHEN MATCHED THEN --데이터 중복건이 있는경우 Update
UPDATE SET col1 = val1[, col2 = val2…]
WHEN NOT MATCHED THEN -- 중복건이 없는 경우 처리 Insert
INSERT (컬럼리스트) VALUES (값들....);

.
:
Posted by .07274.
2010. 9. 7. 11:15

오라클 페이징 처리 I.lib()/I.lib(Oracle)2010. 9. 7. 11:15

.. .. ..
<sql id="oraclePageHeader">
        <isNotEqual property="pagesize" compareValue="0">
        SELECT *
          FROM (SELECT ROWNUM AS rowindex,
                       original.*
                  FROM (
        </isNotEqual>   
    </sql>
   
    <sql id="oraclePageFooter">
        <isNotEqual property="pagesize" compareValue="0">
            ) original
        ) WHERE rowindex BETWEEN (#pageno# * DECODE (#pagesize#, 0, 10, #pagesize#) + 1)
                                           AND ( (#pageno# + 1) * DECODE (#pagesize#, 0, 10, #pagesize#))
        </isNotEqual>   
    </sql>
.
:
Posted by .07274.