본문 바로가기

오라클11

오라클 ) 컴파일 오류 정보 보는 방법 -> "오라클 부적당한 상태입니다" 에러 1. 현재 OBJECT Status 보기SELECT object_name, object_typeFROM user_objectsWHERE status = 'INVALID';invalid인 object 확인 가능2. user_error 테이블현재 접속한 사용자가 소유한 객체의 에러 확인 가능오류가 해결되면 테이블에서 자동 삭제몇번 째 라인에서 어떤 에러가 발생 되었는 지 확인 가능SELECT *FROM user_errorsWHERE name = '이름'; //이름 = 프로시저 이름, 함수 이름 등등 2025. 3. 20.
데이터베이스 ) 오라클 LOCK 확인 및 UNLOCK 하기 1. 테이블 LOCK 테이블 확인SELECT o.object_name, l.session_id, l.oracle_username, l.locked_mode, s.serial#FROM v$locked_object lJOIN dba_objects o ON l.object_id = o.object_idJOIN v$session s ON l.session_id = s.sidWHERE o.object_name = '테이블명';2. 테이블 LOCK 풀기SESSION_ID와 SERIAL# 넣어 KILL 할 것ALTER SYSTEM KILL SESSION '198,3723' IMMEDIATE; 3. 프로시저 생성이 갑자기 안될 때 SELECT s.sid, s.serial#, s.usernam.. 2025. 2. 10.
오라클 ) 모든 스키마에서 컬럼명, 테이블명 등 사용 중인 내용 검색 SELECT owner, name, type, line, textFROM all_sourceWHERE UPPER(text) LIKE UPPER('%컬럼명%') --AND UPPER(text) LIKE UPPER('%테이블명%') --and owner = '스키마명' 2024. 6. 3.
Oracle ) 컬럼의 값으로 줄 바꿈 넣기 (CHR 10) 컬럼의 값으로 줄바꿈 내용을 넣고 싶을 때 CHR(10) 을 이용 예제코드UPDATE 테이블명SET 컬럼명 ='- 첫번째 줄 입니다.' || CHR(10) || '- 두번째 줄 입니다.' || CHR(10)WHERE 조건식; 결과 값 2024. 5. 8.
인텔리제이 ) DB 연동 방법 인텔리제이 DB 연동 방법 1. View > Tool Windows > Database 2. 플러스 버튼 > Data Source > DB 선택 3. 사진과 같이 입력 후 Test Connection 4. Test Connection > 성공 뜨면 됩니다. 2024. 4. 10.
오라클 ) dmp 파일을 다른 스키마로 imp 하기 AAA라는 스키마를 사용하다가 BBBB로 변경되었는데, 기존 백업 파일은 AAA라는 스키마로 명명되어 있어서 문제가 발생. imp '계정/비밀번호@데이터베이스명' FROMUSER=AAA TOUSER=BBB file=덤프파일명.dmp 2024. 3. 29.
오라클 ) 프로시저, 함수 내에서 문자 찾기 --프로시저 TEXT검색 SELECT * FROM USER_SOURCE WHERE 1=1 AND TYPE = 'PROCEDURE' --패키지나 다른 부분을 검색 하고 싶다면 대문자로 입력 AND TEXT LIKE '%텍스트 명%' --여기에 찾고 싶은 텍스트 입력 ORDER BY NAME, LINE; --FUNCTION TEXT검색 SELECT * FROM USER_SOURCE WHERE 1=1 AND TYPE = 'FUNCTION' AND TEXT LIKE '%텍스트 명%' ORDER BY NAME, LINE; 2024. 3. 12.
오라클) 특정 컬럼 중복제거 후 전체컬럼 출력하기 SELECT t.* FROM ( SELECT 테이블명.*, ROW_NUMBER() OVER (PARTITION BY 컬럼명 ORDER BY 컬럼명) AS row_number FROM 테이블명 ) t WHERE t.row_number = 1; 2023. 6. 15.
Oracle 피봇(Pivot) 테이블 사용하기 오라클 Pivot 행, 열 데이터를 서로 전환 11g부터 사용가능 집계함수를 이용해야함 1. 아래와 같은 테이블 구조가 있다고 가정 2. 동작 설명 1. test_table에서 각각 ft_cd, ft_nm 컬럼을 select 2. PIVOT을 사용하여 쿼리 결과를 행-열 방식으로 변환 3. IN 문 안의 내용이 컬럼명이 됨 4. 동시에 해당 값을 찾아 ROW 값으로 출력 됌. SELECT ft_nm_01, ft_nm_02, ft_nm_03, ft_nm_04, ft_nm_05 FROM ( SELECT ft_cd, ft_nm FROM test_table ) a PIVOT ( MAX(ft_nm) FOR ft_cd IN ( '1' AS ft_nm_01, '2' AS ft_nm_02, '3' AS ft_nm_03.. 2023. 4. 19.
오라클 DB ) 프로시저로 배열 넘기기 ( IN, FROM 절에 배열 형식으로 사용 - 콤마, 기준으로 구분 ) SELECT TRIM(REGEXP_SUBSTR('ddd,fff,hhh,jjj', '[^,]+', 1, LEVEL)) FROM DUAL CONNECT BY INSTR('ddd,fff,hhh,jjj', ',', 1, LEVEL - 1) > 0; 프로시저 예시 procedure proc_arrTest ( , p_arr in varchar2 -- (배열, ex - 0101,0102,0103,) ) is begin update 테이블명 set 컬럼2 = 'Y' where 1 = 1 and 컬럼1 in ( select 컬럼1 from ( select trim(regexp_substr(p_arr,'[^,]+',1,level) ) as 컬럼1 from dual connect by instr(p_arr,',',1,lev.. 2023. 1. 13.
데이터베이스 (Database) 데이터베이스 (Database) 다수의 사람들이 공유하여사용 할 목적으로 통합 관리되는 데이터들의 모임 오라클 설치 후 접근 방법 CMD 창 - sqlplus 입력 데이터 베이스를 사용할 수 있는 "사용자 계정"을 만들기 create user 사용자이름 identified by 암호; 권한 주기 (Grant) grant 권한명, ----- to 사용자이름; grant connect, resource, dba to 사용자 이름; connect : 사용자로 하여금 접근할 수 있도록 하는 권한 resource : 트리거, 시퀀스, 타입, 프로시저, 테이블 등을 사용 할 수 있도록 하는 권한, 이게 없으면 테이블 생성 불가능. dba : 해당 사용자가 소유한 DB를 관리할 수 있고, 작성 / 변경 / 제거 등을.. 2022. 4. 16.
반응형