분류 전체보기
-
[Oracle]ORA-00054: resource busy and acquire with NOWAIT specified or timeout expiredDataBase/Oracle 2018. 10. 19. 12:44
오류 보고 -ORA-00054: resource busy and acquire with NOWAIT specified or timeout expired00054. 00000 - "resource busy and acquire with NOWAIT specified or timeout expired"*Cause: Interested resource is busy.*Action: Retry if necessary or increase timeout. 락이 걸려서 생기는 에러란다. DBA 권한을 이용하면 해당 출처를 이용하면 해결이 가능하다. 하지만, 난 DBA권한이 회사에서 없다. ㅠㅠ 급하게 해결하려니, 여기서 아이디어를 얻어서 해결했다. 세션을 커밋시키는 것이다. autocommit을 꺼두고 이것저것 했..
-
[Oracle] mysql의 DATE_FORMAT을 오라클에서 사용하기(DATE형식 formatting)DataBase/Oracle 2018. 10. 16. 18:14
mysql의 DATE_FORMAT은 DATE형을 원하는 모양으로 포맷시켜준다. mysql의 DATE_FORMAT 경우, 1SELECT DATE_FORMAT('2017-10-10 12:12:12', '%Y-%m-%d %h:%s:%i');cs mysql에서 Y는 년도, m은 월, d는 일, h는 시, s는 분, i는 초를 의미한다. Oracle의 경우, 1. 들어온 파라미터가 char형일 때, 1SELECT TO_CHAR(TO_DATE('2017-10-10 12:12:12', 'YYYY-MM-DD HH24:MI:SS'), 'YYYY-MM-DD HH24:MI:SS') FROM DUAL;cs char형의 경우, date형식으로 바꿔준 뒤 char형으로 바꿔준다. to_date만 할 경우, 원하는 포맷형식으로 볼..
-
-
웹 디버깅 도구 mitmproxy 설치하고 실행하기 for Mac(getting started mitmproxy)개발도구/개발 tools 2018. 10. 6. 17:31
맥에 피들러를 설치하려고 했는데, 맥용 피들러는 mono framework라는 툴을 설치해줘야 하는데, 다운 받는 중에 이미 300MB 용량을 잡아먹고 나서도 1.1GB가 필요하다는 말을 보고 바로 껐다... 다른게 없을까 하고 찾다가 발견한 프리웨어이자 웹 디버깅 도구 mitmproxy를 찾아냈다. (윈도우는 '피들러'만한게 없는 것 같다.) 이미지는 위처럼 생겼더라. 1. 설치를 위해서는 HomeBrew, python, xcode 명령어 라인도구 등이 먼저 필요하다. * 하지만 일단 homebrew만 깔려있다면 설치하면서 진행이 촵촵 되니까 homebrew만 먼저 설치하면 된다. 참고로 난 Xcode와 homebrew는 설치 되어 있었다.(Xcode도 깔려있어야함) 위에 설명한 것이 다 깔리면 터미널..
-
[Oracle] 계층구조 쿼리 정리란?(퍼온 글)DataBase/Oracle 2018. 10. 4. 17:47
완전 깔끔하게 정리를 잘 해주셨는데, 이게 2002년 글이라니... 여전히 유용한 게시물이다 +_+ 사용법 잊을 때마다 다시 보면서 써먹어야지. 출처: http://www.gurubee.net/lecture/1300 계층구조 쿼리란?오라클 데이터베이스 scott 유저의 emp 테이블을 보면 empno와 mgr컬럼이 있으며, mgr 컬럼 데이터는 해당 사원의 관리자의 empno를 의미 한다.예를 들어서 아래의 데이터를 보면?1234EMPNO ENAME SAL MGR------ ------- ------ ------ 7369 SMITH 800 7902 7902 FORD 3000 7566- empno 7369사원의 관리자는 7902의 empno를 가진 사원이며- empno 7902사원의 관리자는 7566의 e..
-
[Oracle] 값이 number형인지 체크해주는 함수 만들기(IS_NUMBER)DataBase/Oracle 2018. 10. 3. 10:28
값이 number형인지 체크해주는 함수를 만들어주면 개발할 때 간단히 사용할 수 있을 것 같아 스택오버플로우를 참고해서 만들었다. IS_NUMBER로 함수명을 정했다.(이게 숫자인지 문자형인지 구분해주는 함수) number형이 맞다면, 1을 반환하고 그렇지 않다면 0을 반환한다. 12345678910111213141516CREATE OR REPLACE FUNCTION "IS_NUMBER" (IN_STRING IN VARCHAR2) RETURN INTIS V_NUM NUMBER; BEGIN V_NUM := TO_NUMBER(IN_STRING); -- 숫자로 바꾼다 RETURN 1; EXCEPTION WHEN VALUE_ERROR THEN -- 숫자로 바꿨는데 문자열이 포함되어 있으면 예외를 RETURN 0..
-
[Oracle] mysql 기능인 ON UPDATE CURRENT_TIMESTAMP를 oracle에서 구현하기DataBase/Oracle 2018. 10. 2. 15:56
mysql에서 ON UPDATE CURRENT_TIMESTAMP란 데이터가 바뀔 때마다 자동으로 원하는 컬럼에 현재 시간으로 자동 업데이트 해주는 기능이다. 보통 '수정한 날짜'에 해당하는 컬럼에 많이 쓰이는 것으로 보인다. mysql에서는 테이블 생성 당시에 해당 기능을 만들 수 있다. 1234CREATE TABLE `demo_table` ( `modified_date` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP)Colored by Color Scriptercs 하지만, oracle에는 이러한 기능이 없어 trigger로 구현해야 한다. oracle 구현방법도 어렵지 않다. 1234567create or replac..
-
[Oracle] VARCHAR2(10) 과 VARCHAR2(10 CHAR)의 차이점DataBase/Oracle 2018. 10. 2. 09:50
간단하게 말하면, varchar2(10)만 선언하면 10byte를 의미하고, varchar2(10 char)는 10개의 글자를 의미한다. 그래서 varchar2(10)의 경우는 10글자를 담을 수 없다. 1글자에 1 byte를 넘는 경우도 있으니까 말이다. 하지만, varchar2(10 char)의 경우 byte크기와 상관없이 10글자를 담을 수 있다. 보통 한글의 경우, 한 글자당 2 byte로 알고 있는데, 이럴 경우 varchar2(10)의 경우에는 한글 10자를 쓸 수 없다. oracle 프로시저 작성 중에 '컬럼 크기가 작다는 에러'를 받고 찾아서 알아낸 결과이다! 그리고 좀 더 찾아보니 스택오버플로우에 좋은 정리가 있어서 링크를 남긴다.