나 혼자 DB 레벨업
close
프로필 배경
프로필 로고

나 혼자 DB 레벨업

  • 분류 전체보기 (119)
    • 데이터 모델링 (4)
      • 관계형 데이터 모델링 (4)
    • DB 기초 (6)
      • DB & SQL (6)
    • 책 (1)
      • SQLP 핵심노트 1권 (0)
      • SQLP 핵심노트 2권 (1)
    • ORACLE (79)
      • DBA (24)
      • ERROR CODE (38)
      • EXADATA (1)
      • MULTITENENT (2)
      • EOL (1)
      • SQL (2)
      • SQL Tuning (9)
      • SQL Developer Tool (2)
    • TIBERO (11)
      • DBA (7)
      • ERROR CODE (2)
      • SQL Tuning (2)
    • IT 지식 (13)
      • Window (5)
      • Linux (6)
      • 편집기 (2)
    • POSTGRESQL (1)
      • DBA (1)
    • MS Office (2)
      • PowerPoint (1)
      • Excel (1)
    • 기타 (1)
      • 스포츠 (1)
  • 홈
  • 태그
  • 방명록

데이터 타입 이해하기

1. 숫자 데이터 타입NUMBER: 소수점이 있는 숫자를 다루는 경우에 사용합니다. 예를 들어, 제품의 가격을 저장할 때 NUMBER(6,2)를 사용하면, 최대 6자리 숫자 중 2자리를 소수점으로 표현할 수 있어요. 예: 1234.56INTEGER: 정수 데이터만 저장하는 경우에 적합합니다. 예를 들어, 사람의 나이를 저장할 때 INTEGER 타입을 사용할 수 있죠. 예: 29 2. 문자 데이터 타입VARCHAR2: 텍스트 데이터를 저장할 때 사용되며, 가변 길이를 가집니다. 예를 들어, 사용자의 이메일 주소를 저장할 때 VARCHAR2(100)을 사용하면 최대 100자까지 저장할 수 있습니다. CHAR: 고정 길이 문자열을 저장할 때 사용합니다. 예를 들어, 차량 번호판 번호 같은 데이터는 일정한 길이..

  • format_list_bulleted 관계형 DBMS/DB & SQL
  • · 2024. 4. 18.
  • textsms

윈도우 바탕화면 바로가기 단축키

윈도우를 사용하면서 바탕화면으로 빠르게 이동하는 방법을 궁금해하시는 분들이 많은데요, 저도 처음에는 여기저기 창을 최소화하면서 시간을 낭비한 기억이 있습니다. 그런데 간단한 방법을 알게 되어 이제는 순식간에 바탕화면으로 돌아갈 수 있게 되었습니다. 단축키 : Windows 키 + D 키를 동시에 누르기 이렇게 하면 모든 창이 최소화되어 바로 바탕화면이 나타납니다. 작업 중이던 창들을 다시 불러오고 싶다면, 같은 키 조합을 한 번 더 누르면 그대로 복구되죠. 이 방법을 활용하면 윈도우 사용 중에도 빠르게 바탕화면으로 돌아가 작업을 정리하거나 다른 애플리케이션을 실행하는 데 시간을 절약할 수 있습니다. 한 번 시도해 보세요, 분명 생각보다 유용하게 사용할 수 있을 겁니다.

  • format_list_bulleted IT 지식/Window
  • · 2024. 4. 17.
  • textsms

PK 컬럼을 포함하는 일반 인덱스를 만들어도 될까?

성능 개선을 위해 PK 컬럼 NO를 선두로하는 인덱스를 만들어야 한다. 고민이 많아진다. PK 컬럼을 선두컬럼으로 하는 인덱스를 만드는게 맞는건가? PK 인덱스는 빠른거 아닌가? PK 뒤에 넣는것도 찝찝하고. 컬럼 중복 인거 같기도하고... 당황스럽다. 경험을 쌓다보니, 성능 개선을 위해 반드시 필요하면 신규 생성하는 것은 옳은 방법임을 알게 되었다. 단, 명확한 사유가 있어야야 한다. 당연히 성능 개선을 위한 것이지만, 오성고 저자분의 의견은 아래와 같이 명확하다. 1) TB_TEST_PK : 중복 방지용 ( PK ) 2) TB_TEST_IDX01 : 조회용 ( PK를 포함하는 인덱스 ) 아래 TEST로 어떻게 구성하는지 확인! [ PK 컬럼을 포함하는 인덱스 생성 ] [1] 테이블 생성 DROP TA..

  • format_list_bulleted ORACLE/DBA
  • · 2024. 4. 16.
  • textsms

시퀀스 초기화 방법

시퀀스 "1" 초기화 방법은 18C 이전에는 매우 번롭고, 깔끔하지 못했다. 왜냐하면, 재생성을 하지 않고는, 조정 후 시퀀스를 사용하게 되면 면 2로 시작되기 때문이었다. 18C 부터는 간단한 명령문으로 시퀀스를 초기화 하고, 1 부터 사용 할 수 있게 되었다. 아래 문법 및 테스트를 참고하세요. ​ [ 문법 ] ALTER SEQUENCE TB_SSQ_TEST_SQ1 RESTART START WITH "원하는 시작 번호"; [ 18C 부터 시퀀스 초기화 ] 1. 신규 생성 CREATE SEQUENCE TB_SSQ_TEST_SQ1 START WITH 1 INCREMENT BY 1 CACHE 100 NOCYCLE; 2. 시퀀스 현재값 10으로 변경 위해 10번 사용 SELECT TB_SSQ_TEST_SQ1..

  • format_list_bulleted ORACLE/DBA
  • · 2024. 4. 12.
  • textsms
SQL Cursor Flush 방법

SQL Cursor Flush 방법

수행한 SQL Cursor를 Flush 해아만 하는 상황이 종종 발생한다. 명령문은 아래와 같으며 살제 사용하는 방법은 아래 글을 참고 하시기 바랍니다. [ 명령문 ] EXEC SYS.DBMS_SHARED_POOL.PURGE ( SQL의 ADDRESS, SQL의 HASH_VALUE ,'C'); ​ [1] 아키텍처 확인 ​ SQL을 수행하면 내부적으로 SQL Cursor(LCO = Library Cache Object) 로써, SGA -> Shared Pool -> Shared SQL Area에 저장됩니다. ​ [2] SQL을 10개 실행하여 Cursor 10개 생성 주석에 다른 숫자를 넣어 SQL FULL TEXT 서로 다르게 함. SELECT /* KTH 1 */ * FROM EMP; SELECT /*..

  • format_list_bulleted ORACLE/DBA
  • · 2024. 4. 11.
  • textsms

파티션 테이블에 Unique 고찰

Unique 컬럼은 집합에서 모든 ROW 사이에 서로 다름을 보장해주는 컬럼 or 컬럼들이다. 물리적으로는 Unique Index가 그 역할을 하고 있다. Partitioned Table에서 Unique를 생각해 보았다. 아래 3가지 Unique 경우의 수가 있다. 1) Unique Non-Partititioned Index - "전체" 대상 집합으로 Unique 하게 해준다. 2) Unique Local-Partitioned Index - Local 이라서 파티션 당 Unique함을 표현하는 것 같다. 하지만 "전체" 기준에서 Unique 하면, 파티션에서도 당연히 Unique 해진다. 그러므로 Unique Index 안에는 필수로 "파티션 키"가 포함되어야 한다. ( 파티션 키가 포함 되지 않으면 D..

  • format_list_bulleted ORACLE/DBA
  • · 2024. 4. 8.
  • textsms

문제로 풀어보는 Partitioned Index

년월일(YYYYMMDD) 컬럼을 이용하여 년 파티션 테이블로 구성 하였다. 여기서 년 별로 [NO] 컬럼이 UNIQUE한 데이터가 구성되도록 하려고 합니다. INDEX 생성 스크립는 어떻게 해야 할까? == 문제 예제 테이블 스크립트 ==; CREATE TABLE TEST ( NO VARCHAR2(10), YYYYMMDD VARCHAR2(8), C1 VARCHAR2(10), C2 VARCHAR2(10), C3 VARCHAR2(10) ) PARTITION BY RANGE ( YYYYMMDD ) ( PARTITION P_2023 VALUES LESS THAN ( '2024' ), PARTITION P_2024 VALUES LESS THAN ( '2025' ), PARTITION P_2025 VALUES LE..

  • format_list_bulleted ORACLE/DBA
  • · 2024. 4. 6.
  • textsms
PostgreSQL 설치 ( Synology )

PostgreSQL 설치 ( Synology )

1. Synology 다운 : Docker 수행 > 레지스트리에서 postgre 검색 더블클릭 다운하자. ​ ​ 2. 이미지 확인 > 클릭 : 다운 된 내역은 이미지 탭에 있다. postgres:16.1 클릭 ​ ​​ 3. 일반설정 > 고급설정 > 시작 : 2번 클릭시 설정 팝업이 나온다. 이때 아래 내용만 기입하자 1) 포트설정 : - 로컬포트 : 25432 ( 외부접속 포트 ) - 컨테이너포트 : 5432 2) 환경 : 변수 2개 추가 - POSTGRES_USER : postgres - POSTGRES_PASSWORD : 1234 ( 지정하지 않으면 DB가 실행되지 않음 ) ​ PASSWORD 입력되지 않으면 DB가 시작되지 못함 ​ ​​ 4. 컨테이너 확인 ( postres16 확인 ) : 3번 설..

  • format_list_bulleted POSTGRESQL/DBA
  • · 2024. 1. 14.
  • textsms

JDBC-21009 : No tempfile was found

ERROR CODE / 설명 : 티베로 튜닝 프로젝트의 TEST DB에서 INDEX 생성 중 에러 발생 Time Start : 2023-08-06 오전 10:58:35.270 [10:58:41.835]java.sql.SQLException: JDBC-21009:No tempfile was found. Time End : 2023-08-06 오전 10:58:41.835 Elapsed Time for Script Execution: 6565.563msecs 발생 원인 : TEMP FILE 조회 시도, TEMP FILE 없었기 때문에 인덱스 생성이 안됨SELECT * FROM DBA_TEMP_FILES; 0 Rows 해결방법1. 테이블 스페이스 생성 ( 공부 할 때 )create temporary tables..

  • format_list_bulleted TIBERO/ERROR CODE
  • · 2024. 1. 10.
  • textsms
ORA-28040 : NO matching authentication protocol

ORA-28040 : NO matching authentication protocol

ERROR CODE / 설명 : 접속하려는 DB Version 보다 낮은 버전의 Client or Server Version으로 접속을 시도하는 경우 볼 수 있는 에러코드 ORA-28040 : NO matching authentication protocol 발생 원인 11G CLIENT로 원격 DB 19c 에 접속하려고 함​. 에러 발생 ( ORA-28040 : NO matching authentication protocol ) 해결 방법 1. sqlnet.ora 파일 수정 : "SQLNET.ALLOWED_LOGON_VERSION=10" 기입하기 ( 서버보다 낮은 클라이언트 버전도 접속을 허용하겠다는 의미 ) 2. 비밀번호 변경 SQLNET.ORA 파일 변경 전에 이미 생성된 계정이 위 작업에 영향을 받..

  • format_list_bulleted ORACLE/ERROR CODE
  • · 2024. 1. 9.
  • textsms

ORA-01795 : maximum number of expressions in a list is 1000

ERROR CODE / 설명 : IN 절에 INPUT값 수가 1000개를 초과할 경우 발생하는 에러. ORA-01795: maximum number of expressions in a list is 1000 발생 원인 : 보통 Soluntion 프로그램에서 IN절에 많은 값을 넣는 경향이 있다. 1000개가 넘으면 위 에러가 발생하니 유의해야 한다. -- [1] IN절 내부에 :1 ~ :1001 까지 넣기 SELECT * FROM EMP WHERE EMPNO IN ( :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,:31,:32,:33,:34,:35,:3..

  • format_list_bulleted ORACLE/ERROR CODE
  • · 2024. 1. 8.
  • textsms

ORA-01438 : value larger than specified precision allowed for this column

ERROR CODE / 설명소수점 데이터 타입 컬럼에 자리수를 초과하는 데이터를 넣을려는 경우 발생하는 에러 ORA-01438: value larger than specified precision allowed for this column 발생 원인 컬럼 COL2 는 NUMBER(7, 2)로 정수 5자리, 소수점 이하 2자리로 구성되어 있다.  정수 6자리를 저장하다가 에러 발생함-- [1] TEST 테이블 생성CREATE TABLE IMSI_TABLE ( col1 number(3) , col2 number(7,2) );-- [2] TEST 테이블 INSERT 시도declare i integer;begin INSERT INTO imsi_table ( col1, col2 ) VALUES..

  • format_list_bulleted ORACLE/ERROR CODE
  • · 2024. 1. 8.
  • textsms
ORA-01704 : string literal too long

ORA-01704 : string literal too long

ERROR CODE / 설명 : 보통 '' 안에 문자열을 넣음. 싱글 쿼테이션(')으로 감싼 문자열을 String Literal 이라함.. 여기에 담을수 있는 데이터의 크기 는 최대 4000 BYTE 이다. 4000 BYTE를 초과 할 경우 발생하는 아래 에러가 발생 함 ORA-01704 : string literal too long 발생 원인 : 테이블의 CLOB 컬럼에 '' 4000 BYTE를 넘는 문자열을 넣으려고 시도하다 발생됨. 이는 CLOB 컬럼에 데이터를 넣을수 없는 것이 아니라, '' 안에 4000 BYTE가 넘게 있어 발생 한 것임 -- [1] DB의 캐릭터셋은 UTF8 > 한글 : 1자, 3 BYTE / 영문, 숫자 : 1자, 1 BYTE SELECT LENGTH('데'), LENGTH..

  • format_list_bulleted ORACLE/ERROR CODE
  • · 2024. 1. 7.
  • textsms
ORA-01652 : unable to extend temp segment by 1280 in tablespace TS_BIG_D01;

ORA-01652 : unable to extend temp segment by 1280 in tablespace TS_BIG_D01;

ERROR CODE / 설명: 테이블 스페이스에 연결된 DATAFILE에 사용가능한 공간을 모두 소진하여  데이터를 입력하지 못하는 경우 발생하는 에러  ORA-01652 : unable to extend temp segment by 1280 in tablespace TS_BIG_D01; 발생 원인[1] 테이블 생성 시도 : SQL을 수행하는 접속계정의 DEFAULT TABLESPACE는 TS_BIG_D01 CREATE TABLE TB_ADMDONG_PASSENGER_TEST AS SELECT * FROM TB_ADMDONG_PASSENGER_TOT; `[2] ERROR 발생 ORA-01652 : unable to extend temp segment by 1280 in tables..

  • format_list_bulleted ORACLE/ERROR CODE
  • · 2024. 1. 6.
  • textsms
  • navigate_before
  • 1
  • ···
  • 5
  • 6
  • 7
  • 8
  • navigate_next
공지사항
전체 카테고리
  • 분류 전체보기 (119)
    • 데이터 모델링 (4)
      • 관계형 데이터 모델링 (4)
    • DB 기초 (6)
      • DB & SQL (6)
    • 책 (1)
      • SQLP 핵심노트 1권 (0)
      • SQLP 핵심노트 2권 (1)
    • ORACLE (79)
      • DBA (24)
      • ERROR CODE (38)
      • EXADATA (1)
      • MULTITENENT (2)
      • EOL (1)
      • SQL (2)
      • SQL Tuning (9)
      • SQL Developer Tool (2)
    • TIBERO (11)
      • DBA (7)
      • ERROR CODE (2)
      • SQL Tuning (2)
    • IT 지식 (13)
      • Window (5)
      • Linux (6)
      • 편집기 (2)
    • POSTGRESQL (1)
      • DBA (1)
    • MS Office (2)
      • PowerPoint (1)
      • Excel (1)
    • 기타 (1)
      • 스포츠 (1)
최근 글
인기 글
최근 댓글
태그
  • #오라클
  • #Tibero
  • #오블완
  • #티베로
  • #Oracle
  • #티스토리챌린지
  • #망형데이터모델
  • #Linux
  • #계층형데이터모델
  • #단축키
전체 방문자
오늘
어제
전체
Copyright © 쭈미로운 생활 All rights reserved.
Designed by JJuum

티스토리툴바