일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- Python
- TPL
- TextBox
- 부모창
- i18n
- 일괄변경
- SVN
- Eclipse
- 문자열자르기
- Postfix
- Oracle
- centos
- 천단위
- random
- install
- yum
- 확장자
- ubuntu
- php
- JavaScript
- smarty
- MySQL
- 한글 깨짐
- Selectbox
- jQuery
- RabbitMQ
- mariadb
- docker
- replace
- Today
- Total
목록DB/Oracle (11)
wilson's story
ORA-00054: 자원이 사용중이고, NOWAIT가 지정되어 있습니다 이런 경우는 table에 락이 걸려있어서 일어나는 에러이다. 사용중 이런 에러가 나타날 경우 기본적으로 DB를 리스타트 해주면 되지만 이것마져 맘대로 되지 않을경우 하는 방법이 있다. -- TEST_TABLE -> 테이블이름 SELECT A.SID, A.serial# FROM v$session A, v$lock b, dba_objects c WHERE A.SID=b.SID AND b.id1=c.object_id AND b.TYPE='TM' AND c.object_name='TEST_TABLE'; SID SERIAL# --- ------- 152 46636 이런결과가 나왔다면ALTER SYSTEM KILL SESSION '152, 46..
기한내에 사용가능한지를 판별하는 쿼리문을 짜보았다. 시작일의 사용 유무는 현재시 - 시작일 마지막일의 사용 유무는 마지막일 - 현재일 SIGN을 이용하여 가능하면 1로 출력된다. DECODE을 이용하여 사용가능한 1은 Y 불가능인 -1은 N 으로 표기 기한이없는것도 N으로 표기 SELECT decode( SIGN(sysdate - to_date('2010-06-01', 'yyyy-MM-dd')), 1, 'Y' , -1, 'N', 'N') AS reSt , decode( SIGN(to_date( '2010-06-30' , 'yyyy-MM-dd') - sysdate ), 1, 'Y' , -1, 'N', 'N') AS reEn FROM dual
SELECT * FROM v$version WHERE banner LIKE 'Oracle%';
--IN SELECT * FROM TEST WHERE TEST1 IN ('공백', '테스트', NULL) -- 펼쳐진 모습 WHERE TEST1 ='공백' OR TEST1 = '테스트' OR TEST1 = NULL -- OR 로 연결된다. ----------------------------------------------- --NOT IN SELECT * FROM TEST WHERE TEST1 NOT IN ('공백', '테스트', NULL) -- 펄쳐진 모습 WHERE TEST1 '공백' AND TEST1 '테스트' AND TEST1 NULL -- AND 로 연결 된다.
우선 set escape on 되어 있어야 한다. 홀따옴표의 경우는 두번 연속으로 입력해야 인식이 된다 SQL> select valu1, replace(valu1, '''', ' ') from test ;
select 사용시 중복된 칼럼값을 제거하고 결과물을 얻고자 할때 쓴다 SELECT DISTINCT STUDENT_ID, STUDENT_NM FROM SCHOOL
로컬상태에 oracle 을 설치후에 IP가 변경 되었을시 oracle이 설치된 경로로 간후에 \oracle\product\10.2.0\db_1\network\ADMIN listener.ora , tnsnames.ora 두개의 파일을 열어서 IP를 변경 해주면 된다.
sql plus 에서 SID 를 확인하는 방법입니다. sql plus 로그인을 한후에 SQL > select name from v$database; 이렇게 해주면 SID를 확인 할수 있습니다.
1=1 은 항상 참이다.... 조건절이 있느냐 없느냐 where 에 and 를 붙여야할때가 있고 그렇지 않을때가 있다. 이럴때 그냥 1=1 (항상참)을 해주고 and를 붙여주면 된다. where 절을 좀더 편리하게 구성하기 위한 방법이다.
SELECT TO_CHAR (100000, 'FM999,999') FROM DUAL; FM -> 포맷 999 -> 숫자 ,999 -> 천단위에서 ',' 를 찍어요
- 특정 칼럼의 값을 기준으로 IF문을 사용하는 것과 같은 효과를 내는 함수 - 구문 DECODE({column | expression}, search1, result1 [, search2, result2, ...] [, default]) - 사용 예 SELECT dname, job, DECODE (job, 'analyst', '분석가', 'clerk', '점원', 'manager', '관리자', 사원 ) AS new_job FROM emp; => job 칼럼의 값이 'analyst'이면 '분석가'를, 'clerk'이면 '점원'을, 'manager'이면 '관리자'를 출력한다. 해당되는 값이 없다면 '사원'을 출력한다.