검색결과 리스트
DB&NoSql/oracle에 해당되는 글 14건
- 2013.04.16 [ORACLE] JAVA + ibatis 오라클 자동 문법 생성
- 2012.09.28 [오라클] 조작어 ,컬럼추가, 컬럼명 변경 , 데이터 타입변경 , 컬럼 삭제
- 2012.09.28 [오라클]랜덤 숫자 구하기
- 2012.09.28 [오라클] 테이블 관계 조회 부모 자식 관계 조회 !!
- 2011.04.06 [오라클] 테이블 스키마 가져오기
- 2011.04.06 [오라클] 테이블 복사
- 2010.12.20 [oracle] 유용한 쿼리문 만들기
- 2010.11.30 [oracle] 오라클 테이블인덱스,코맨트,오브젝트 조회 쿼리
- 2010.10.24 [oracle]오라클 함수 정리
- 2010.10.24 [oracle] 오라클 인덱스 조회 쿼리
글
1. java로 개발 진행할떄 BEAN이나 Insert, update . insert 문구 만들때 쉽게 만들어주는 쿼리문
복사 해서 이용하면 된다.
설정
트랙백
댓글
글
1. 컬럼 추가
alter table 테이블 add(필드 number(10));
alter table 테이블 rename column 현재이름 to 변경이름;
alter table 테이블 drop(필드);
설정
트랙백
댓글
글
오라클에서 랜덤으로 데이터를 가져올때 사용한다.
설정
트랙백
댓글
글
쿼리보기하여 릴레이션 이름을 찾은후 constrain_name에서 찾아본다.
select CONSTRAINT_NAME, TABLE_NAME, R_CONSTRAINT_NAMEfrom user_constraints
where CONSTRAINT_NAME = 'R_101' /* 에러 코드에 나와있는 릴레이션 이름 */
설정
트랙백
댓글
글
SELECT B.COLUMN_NAME AS 컬럼명
, B.DATA_TYPE AS 테이터타입,
B.DATA_LENGTH AS 길이,
B.NULLABLE AS NULL구분,
B.COLUMN_ID AS 컬럼순서,
A.COMMENTS AS 설명
FROM USER_COL_COMMENTS A, USER_TAB_COLUMNS B
WHERE B.TABLE_NAME = A.TABLE_NAME
AND B.COLUMN_NAME = A.COLUMN_NAME
AND B.TABLE_NAME LIKE '테이블명'
ORDER BY B.COLUMN_ID;
설정
트랙백
댓글
글
테스트용 테이블 만들때 유용하게 쓸수 있죠..
CREATE TABLE TEST_MEMBER AS SELECT * FROM MEMBER
검색을 걸어서 필요한 데이타만 복사할수도 있죠.
CREATE TABLE TEST_MEMBER AS SELECT * FROM MEMBER WHERE IDX<10000
테이블 구조만 복사하고 싶다면..
CREATE TABLE TEST_MEMBER AS SELECT * FROM MEMBER WHERE 1=2
검색조건을 이렇게 한다면 테이타는 복사가 안되겠죠..
테이블이 이미 만들어진 경우는
INSERT INTO TEST_MEMBER SELECT * FROM MEMBER
주의할점은 테이블구조만 복사된다는 것이다.
프라이머리키나 인덱스등은 복사가 안돼니 따로 설정해 주어야 한다.
-- 추가
테이블을 다른 테이블스페이스로 지정하고 미리 생성해 둡니다.
CREATE TABLE COPY_TB
(A NUMBER,
B VARCHAR2(10))
TABLESPACE COPY_TBS
그리고 기존 테이블의 내용을 새로 생성한 테이블에 쑤셔 넣습니다.
INSERT INTO COPY_TB SELECT * FROM ORI
이게 이상해 보이지만... exp/imp로 하는 방법도 있습니다.
요기에 대해서는.. 패스 ㅡㅡ;
9i 이상에서는 단 한줄로 테이블이 속한 테이블스페이스를 옮길 수 있습니다.
요렇게
ALTER TABLE copy_tb MOVE TABLESPACE users;
인덱스도 옮길 수 있다. 테스트용 scott꺼를 옮겨 보기로 하자.
alter index PK_EMP rebuild tablespace users
설정
트랙백
댓글
글
--BEAN CLASS 만들기
select
'private String ' || lower(SUBSTR(a.COLUMN_NAME, 1,1))||SUBSTR(replace(INITCAP(lower(a.COLUMN_NAME)), '_',''), 2) || ' = "";'
|| ' //' || NVL(b.COMMENTS, '')
as 빈소스
FROM USER_TAB_COLS a
, USER_COL_COMMENTS b
WHERE a.TABLE_NAME = b.TABLE_NAME
and a.COLUMN_NAME = b.COLUMN_NAME
AND a.TABLE_NAME=upper('ez_user');
--SELECT 만들기
select decode(rownum, 1, 'SELECT ' || CHR(13))
|| '' || upper(COLUMN_NAME)
|| ' as ' ||lower(SUBSTR(COLUMN_NAME, 1,1))||SUBSTR(replace(INITCAP(lower(COLUMN_NAME)), '_',''), 2)
|| decode(rownum, (COUNT(*) OVER()), CHR(13)
|| ' FROM '|| TABLE_NAME ||' ' ||' ;', ', ')
as 조회쿼리
FrOm USER_TAB_COLS --ALL_TAB_COLS, USER_TAB_COLS
where TABLE_NAME=upper('CORP_OPER_DAY');-- and OWNER='MYEZWEL';
--INSERT 쿼리 만들기
select
TABLE_NAME,
' '||decode(rownum, 1,'',',')||COLUMN_NAME as 컬럼,
' '||decode(rownum, 1,'',',')||'#'||lower(SUBSTR(COLUMN_NAME, 1,1))||SUBSTR(replace(INITCAP(lower(COLUMN_NAME)), '_',''), 2) || '#' as 세팅부
FrOm USER_TAB_COLS
where TABLE_NAME=upper('EZ_EC_ACTING');
--UPDATE 쿼리 만들기
select
TABLE_NAME||' Z',
' '||'<isNotEmpty prepend="," property="'||lower(SUBSTR(COLUMN_NAME, 1,1))||SUBSTR(replace(INITCAP(lower(COLUMN_NAME)), '_',''), 2)||'">'||
'Z.'||COLUMN_NAME || '='||
'#'||lower(SUBSTR(COLUMN_NAME, 1,1))||SUBSTR(replace(INITCAP(lower(COLUMN_NAME)), '_',''), 2) || '#' ||
'</isNotEmpty>'
as 수정세팅부
FrOm USER_TAB_COLS
where TABLE_NAME=upper('EZ_EC_ACTING');
설정
트랙백
댓글
글
SELECT *
FROM ALL_OBJECTS
WHERE OBJECT_NAME LIKE '명'
-- 테이블 조회
SELECT *
FROM ALL_TABLES
WHERE TABLE_NAME LIKE '명'
-- 시노님 조회
SELECT *
FROM ALL_SYNONYMS
WHERE SYNONYM_NAME = '명'
-- 테이블의 인덱스 정보
SELECT *
FROM ALL_IND_COLUMNS
WHERE TABLE_NAME = '테이블명'
-- 테이블의 컬럼 정보
SELECT *
FROM ALL_TAB_COLUMNS
WHERE TABLE_NAME = '테이블명'
-- TABEL COMMENT 쿼리
SELECT *
FROM ALL_TAB_COMMENTS
WHERE TABLE_NAME = '테이블명'
-- COLUMN COMMENT 쿼리
SELECT *
FROM ALL_COL_COMMENTS
WHERE TABLE_NAME = '테이블명'
-- 인덱스 정보
select * from all_indexes
[출처] [오라클] 테이블 인덱스, 컬럼, 커멘트 정보 얻는 쿼리|작성자 지혜
http://blog.naver.com/bluegriffin?Redirect=Log&logNo=40028654085
설정
트랙백
댓글
글
1) 문자형 함수
LOWER 모든 문자를 소문자로
UPPER 모든 문자를 대문자로
INITCAP 첫 글자는 대문자,나머지는 소문자로
CANCAT 첫 번째 문자와 두 번째 문자를 연결
SUBSTR 문자의 길이를 리턴할 때
LENGTH 문자의 길이를 리턴할 때
NVL 널값을 다른 값으로 대체할 때
NVL2 조건에 의해 널값을 다른 값으로 대체할 때
SUBSTR 특정 문자의 문자열중 필요 부분만 선별하여 사용
RTRIM 서브 스트림의 정확한 위치와 길이를 요구(오른쪽)
LTRIM 서브 스트림의 정확한 위치와 길이를 요구(왼쪽)
RPAD 문자열을 제외한 공간에 지정한 문자열로 대체(오른쪽)
LPAD 문자열을 제외한 공간에 지정한 문자열로 대체(왼쪽)
TRANSLATE 첫 문자는 탐색집합의 첫 문자로 대체(2번째도 동일)
REPLACE 특정 문자열을 다른 문자열로 대체
SOUNDX 같은 단어 또는 유사한 사운드 단어를 음성학적으로
LENGTH 문자의 실제 길이를 변환할 때
LENGTHB 문자열의 실제 길이를 변환할 때
INTSTR 문자열 내의 특정 스트림의 위치
NULLIF 조건이 같으면 NULL,다르면 지정된 값을 리턴할 때
COALESCE 조건에 따라 여러 가지 값을 리턴할 때
2. 시스템 함수
USER 현재 DB 사용자
USERID 현재 DB 사용자에게 할당되는 사용자번호
3. 숫자형 함수
ROUND 해당 소수점 자리에서 반올림할 때
4. 날짜형 함수
SYSDATE 현재 시스템 날짜를 보여줄 때
5. 변환 함수
TO_CHAR 숫자,날짜 타입의 Data를 varchar2타입으로 변환
설정
트랙백
댓글
글
오라클에서 인덱스 조회하기
SELECT a.index_name,a.index_type,a.table_name,b.column_name
FROM USER_INDEXES a,USER_IND_COLUMNS b
WHERE a.index_name = b.index_name
AND a.table_name=upper('테이블명');
RECENT COMMENT