[SQL]
SELECT * |
엑셀 문서작업 한다고 필요해서 작업했던 것인데 나중에 또 써먹을 것 같아서 보관...
[SQL]
SELECT * |
엑셀 문서작업 한다고 필요해서 작업했던 것인데 나중에 또 써먹을 것 같아서 보관...
ALTER TABLE 테이블명 (+ 아래 옵션)
ADD (컬럼 속성(길이)); |
*속 성 : NUMBER, VARCHAR2, DATE 등
*길 이 : 정수값
*테이블 : 테이블명
*컬 럼 : 컬럼명
*DEFAULT : 값 (값이 입력되지 않을 경우, 디폴트로 들어가는 값)
구문 예)
ALTER TABLE 테이블 ADD (컬럼 속성(길이)); |
좀 더 보기 쉽게 표로 정리 하였습니다.
INSERT
INSERT INTO 테이블 VALUES (값, 값, 값...); INSERT INTO 테이블 (컬럼, 컬럼, 컬럼...) VALUES (값, 값, 값...); |
UPDATE
UPDATE 테이블 SET 컬럼=값 WHERE 컬럼=값 |
- WHERE 이하 생략가능
(단, 생략시 모든 ROW를 대상으로 값을 세팅하므로 주의)
DELETE
DELETE FROM 테이블 WHERE 컬럼=값 |
- WHERE 이하 생략가능
(주의점은 UPDATE문과 동일)
ORA-01861 literal does not match format string
원인 : 문자 형식이 일치 하지 않음으로 발생하는 문제.
예) DATE 형식의 칼럼에 String 형식의 값을 대입할 경우... 등
해결) TO_DATE('2009-12-02','YYYY-MM-DD')
그러나 같은 소스파일인데 다른곳에서는 잘 되는 경우...
즉 한 곳에서는 그냥 정상적으로 실행되는 쿼리가 그대로 가져왔는데 안된다면 문자셋을 확인해 보기 바랍니다.
[환경변수] (instant client 10g 기준)
변수 이름 : NLS_LANG // 변수 값 : KOREAN_KOREA.KO16MSWIN949
변수 이름 : TNS_ADMIN // 변수 값 : C:\Ora\instantclient
* TNS_ADMIN 경로는 자신의 컴퓨터에 오라클 instantclient 가 설치되어있는 경로를 지정합니다.
레지스트리 부분
HKEY_LOCAL_MACHINE\SOFTWARE\ORACLE
키 : NLS_LANG // 값 : KOREAN_KOREA.KO16MSWIN949
REPLACE
값을 치환합니다.
구문
REPLACE(String, str1, str2)
String 치환할 값이 들어있는 칼럼 입니다.
str1 치환할 대상 값 입니다.
str2 바뀔 값 입니다.
예)
SELECT REPLACE('2001-01-01','-','') FROM DUAL 의 결과값은
20010101 입니다.
REPLACE()를 붙여서 '-'를 ''로(제거)한 예시 입니다.
구문2
TRUNC(SYSDATE)
SYSDATE 현재 시스템 날짜&시간 입니다.
예)
시스템 날짜 SELECT SYSDATE FROM DUAL 의 결과값은
2009-11-16 오후 3:06:53 입니다.
TRUNC()를 붙이게 되면 시간부분은 잘려나가게 됩니다.
SELECT TRUNC(SYSDATE) FROM DUAL 의 결과값은
2009-11-16 입니다.