검색결과 리스트
database에 해당되는 글 10건
- 2012.10.05 [toad] 토드 SELECT 구문에서 한글이 깨지는 현상
- 2012.10.05 [erwin] ERWIN 설정하기
- 2012.10.05 [oracle] 오라클 서비스 수동으로 켜고, 끄기(bat 파일 생성)
- 2012.09.28 [db] commit 커밋, rollback 롤백
- 2012.09.28 [db] 정렬, 오름차순, 내림차순
- 2012.09.28 [oracle] 계정 생성, 추가, 권한, 삭제
- 2012.09.28 [oracle] 오라클 관리자 비번 설정, 잃어버렸을 때
- 2012.09.28 [db] 테이블 총 갯수 카운트시 성능 저하
- 2012.09.28 [db] Alter Table DDL
- 2012.09.28 [db] 삽입 insert, 삭제 delete, 선택 select 쿼리
글
[toad] 토드 SELECT 구문에서 한글이 깨지는 현상
1. 자신의 Toad 캐릭터 셋을 확인.
SELECT * FROM NLS_DATABASE_PARAMETERS
WHERE PARAMETER = 'NLS_CHARACTERSET';
2. 레지스트리 변경.
결과값 'KO16MSWIN949' (<-다를수 있음) 을 자신의 레지스트리에 쓴다.
시작 -> 실행 -> REGEDIT
HKEY_LOCAL_MACHINE
SOFTWARE
ORACLE
KEY_OraClient11g_home1 (<- 버전에 따라 다를수 있음)
NLS_LANG 의 값을 'KOREAN_KOREA.KO16MSWIN949' 로 변경
3. 시스템에 환경변수 추가
컴퓨터 -> 속성 -> 고급시스템설정 -> 환경변수 -> (시스템 변수) 새로만들기
이름 : NLS_LANG
값 : KOREAN_KOREA.KO16MSWIN949
※ 참고 : http://metalzang.blog.me/130127660830
※ 예상 하건데 오라클 클라이언트 깔았을때 문제가 생기는것 같음.
'database' 카테고리의 다른 글
[erwin] ERWIN 설정하기 (0) | 2012.10.05 |
---|---|
[oracle] 오라클 서비스 수동으로 켜고, 끄기(bat 파일 생성) (0) | 2012.10.05 |
[db] commit 커밋, rollback 롤백 (0) | 2012.09.28 |
[db] 정렬, 오름차순, 내림차순 (0) | 2012.09.28 |
[oracle] 계정 생성, 추가, 권한, 삭제 (0) | 2012.09.28 |
설정
트랙백
댓글
글
[erwin] ERWIN 설정하기
1. erwin 파일을 생성한다.
File > New Logical/Physical 선택
2. 우선 Logical을 기반으로 ERD 작성
로지컬의 테이블 이름 규칙: PHYSICAL 이름[SP]LOGICAL 이름
PHYSICAL이름이 PHYSICAL 이름_LOGICAL 이름 ---> PHYSICAL 이름으로 변경
3. 컬럼을 만든다. 명명 규칙은 테이블 이름에 준한다.
4. Display option(LOGICAL)
Format > Display Level: Attribute
Format > Entity Display: Attribute Datatype, Primary Key Designator, Forreign Key Designator, Alternate Key Designator
5. Display option(PHYSICAL)
Format > Display Level: Column
Format > Table Display: Column Datatype, Null Option, Primary Key Designator, Foreign Key Designator, Alternate Key Designator
6. 코드 생성용 템플릿 만들기
Physical 선택
Tools > Forward Engineer > Schema Generation > Options 탭
전체 체크 해제
※ Create 템플릿 만들기
(좌탭) Table > (우탭) Create > Table
(좌탭) Column > (우탭) Physical Order, Default Value(Create)
(좌탭) Index > (우탭) Create Index > Table Index > Primary Key (PK), Alternate Key (AK), Inversion Entry (IE)
(좌탭) Referential Integity > (우탭) Primary Key (PK) (ALTER/PK), Foreign Key (FK) (ON DELETE, ON UPDATE, Statement Format (ALTER/FK)), UNIQUE(AK) (ALTER/AK)
상단에 Save As 클릭
Selected model 선택
Enter Option Set name : CREATE
※ DROP 템플릿 만들기
(좌탭) Table > (우탭) Drop > Table
상단에 Save As 클릭
Selected model 선택
Enter Option Set name : DROP
7. 코드 생성하기
Physical 선택
Tools > Forward Engineer > Schema Generation
Option Set : CREATE, DROP 선택
하단에 Preview 선택
생성된 코드 복사
'database' 카테고리의 다른 글
[toad] 토드 SELECT 구문에서 한글이 깨지는 현상 (0) | 2012.10.05 |
---|---|
[oracle] 오라클 서비스 수동으로 켜고, 끄기(bat 파일 생성) (0) | 2012.10.05 |
[db] commit 커밋, rollback 롤백 (0) | 2012.09.28 |
[db] 정렬, 오름차순, 내림차순 (0) | 2012.09.28 |
[oracle] 계정 생성, 추가, 권한, 삭제 (0) | 2012.09.28 |
설정
트랙백
댓글
글
[oracle] 오라클 서비스 수동으로 켜고, 끄기(bat 파일 생성)
Q. 오라클을 설치하면 생기는 서비스를 수동으로 켜고 끄자.
오라클을 설치하게 되면,
오라클을 사용하기 위한 서비스가 윈도우에 등록되게 되는데,
항상 실행중이기 때문에,
컴퓨터의 리소스를 많이 잡아먹게 된다.
게다가 오라클 자체도 굉장히 크기 때문에,
점점 컴퓨터의 속도 저하나, 램의 압박이 있을수 있습니다.
그래서 bat 파일을 생성해서 서비스를 죽이고 살리면서,
리소스를 확보할 수 있습니다.
우선 제어판 -> 관리도구 -> 서비스를 실행합니다.
(아래 서비스는 버전에 따라 이름이 다를수 있음)
OracleOraDb11g_home1TNSListener
OracleServiceORCL
OracleDBConsoleorcl
OracleOraDb11g_home1iSQL*Plus
해당 서비스를 찾아서 모두 수동으로 바꿔줍니다.
그리고 메모장을 열어 아래 파일을 만들어줍니다.
orcl_start.bat
net start OracleOraDb11g_home1TNSListener net start OracleServiceORCL net start OracleDBConsoleorcl isqlplusctl start
orcl_stop.bat
net stop OracleDBConsoleorcl net stop OracleServiceORCL net stop OracleOraDb11g_home1TNSListener isqlplusctl stop
파일을 생성한후 실행하게 되면,
오라클과 관련된 서비스가 켜고 꺼집니다.
'database' 카테고리의 다른 글
[toad] 토드 SELECT 구문에서 한글이 깨지는 현상 (0) | 2012.10.05 |
---|---|
[erwin] ERWIN 설정하기 (0) | 2012.10.05 |
[db] commit 커밋, rollback 롤백 (0) | 2012.09.28 |
[db] 정렬, 오름차순, 내림차순 (0) | 2012.09.28 |
[oracle] 계정 생성, 추가, 권한, 삭제 (0) | 2012.09.28 |
설정
트랙백
댓글
글
[db] commit 커밋, rollback 롤백
※ update, delete 문 실행시 DB에서 임시세그먼트에서 처리함
① commit을 날리면 실제로 실행
※ commit, 인정
해당 작업을 실제로 반영
* 삭제시 시퀀스 넘버 초기화 안될시
* 기타등등
* java에서는 자동으로 오토커밋으로 되어 있음
* Connection.setAutoCommit(false);
② rollback을 날리면 원상복구
※ rollback, 원상복구
해당 작업을 원상복구
* 삭제 후 실수 했을때 의 복구
* commit 실행후 복구 안됨 ㅠ
'database' 카테고리의 다른 글
[erwin] ERWIN 설정하기 (0) | 2012.10.05 |
---|---|
[oracle] 오라클 서비스 수동으로 켜고, 끄기(bat 파일 생성) (0) | 2012.10.05 |
[db] 정렬, 오름차순, 내림차순 (0) | 2012.09.28 |
[oracle] 계정 생성, 추가, 권한, 삭제 (0) | 2012.09.28 |
[oracle] 오라클 관리자 비번 설정, 잃어버렸을 때 (0) | 2012.09.28 |
설정
트랙백
댓글
글
[db] 정렬, 오름차순, 내림차순
--ASC, ascending, 오름차순(1,2,3,4,5) select * from test(테이블명) order by seq(정렬시킬 컬럼) asc; --DESC, descending, 내림차순(5,4,3,2,1) select * from test(테이블명) order by seq(정렬시킬 컬럼) desc;
'database' 카테고리의 다른 글
[oracle] 오라클 서비스 수동으로 켜고, 끄기(bat 파일 생성) (0) | 2012.10.05 |
---|---|
[db] commit 커밋, rollback 롤백 (0) | 2012.09.28 |
[oracle] 계정 생성, 추가, 권한, 삭제 (0) | 2012.09.28 |
[oracle] 오라클 관리자 비번 설정, 잃어버렸을 때 (0) | 2012.09.28 |
[db] 테이블 총 갯수 카운트시 성능 저하 (0) | 2012.09.28 |
설정
트랙백
댓글
글
[oracle] 계정 생성, 추가, 권한, 삭제
--계정 생성 create user USERID(계정명) identified by USERPW(암호); --계정 권한 grant connect, resource, dba to USERID(계정명) --계정 삭제 drop USERID(계정명) cascade;
'database' 카테고리의 다른 글
[db] commit 커밋, rollback 롤백 (0) | 2012.09.28 |
---|---|
[db] 정렬, 오름차순, 내림차순 (0) | 2012.09.28 |
[oracle] 오라클 관리자 비번 설정, 잃어버렸을 때 (0) | 2012.09.28 |
[db] 테이블 총 갯수 카운트시 성능 저하 (0) | 2012.09.28 |
[db] Alter Table DDL (0) | 2012.09.28 |
설정
트랙백
댓글
글
[oracle] 오라클 관리자 비번 설정, 잃어버렸을 때
--관리자 로그인 C:\> sqlplus "/as sysdba" show user USER is "SYS" --암호 설정 alter user sys identified by 암호; alter user system identified by 암호; --접속 connect sys/암호 as sysdba connect system/암호
'database' 카테고리의 다른 글
[db] 정렬, 오름차순, 내림차순 (0) | 2012.09.28 |
---|---|
[oracle] 계정 생성, 추가, 권한, 삭제 (0) | 2012.09.28 |
[db] 테이블 총 갯수 카운트시 성능 저하 (0) | 2012.09.28 |
[db] Alter Table DDL (0) | 2012.09.28 |
[db] 삽입 insert, 삭제 delete, 선택 select 쿼리 (0) | 2012.09.28 |
설정
트랙백
댓글
글
[db] 테이블 총 갯수 카운트시 성능 저하
select count(1) from 테이블 where 조건
모든 데이터ROW에 전부 카운트가 들어가기 때문에 성능이 매우 안좋다.
select (select count(1) from 테이블 where 조건), 컬럼 from 테이블 where 조건
이렇게 하면 총갯수를 가져오는데.
성능이 아주 안좋아.
매번 갯수를 합산 하기 때문에 문제가 생기지.
또는 다른 방법으로.
with a as select count(1) from 테이블 where [조건]
with a as select count(1) cnt from 테이블 where [조건]
select a.cnt , [컬럼] from table where [조건]
이렇게 하는 방법도 있구.
첫번째 보다 성능이 좋구.
그다음으로 분석함수를 사용하는 방법이 있어.
그러므로 분석함수를 사용하는 것이 최고
분석함수로 카운트 하는 법 : http://blog.naver.com/kiho0530/150101025019
'database' 카테고리의 다른 글
[db] 정렬, 오름차순, 내림차순 (0) | 2012.09.28 |
---|---|
[oracle] 계정 생성, 추가, 권한, 삭제 (0) | 2012.09.28 |
[oracle] 오라클 관리자 비번 설정, 잃어버렸을 때 (0) | 2012.09.28 |
[db] Alter Table DDL (0) | 2012.09.28 |
[db] 삽입 insert, 삭제 delete, 선택 select 쿼리 (0) | 2012.09.28 |
설정
트랙백
댓글
글
[db] Alter Table DDL
COLUMN
-------------------------------------------------------------------------------------------
삭제
ALTER TABLE [table_name] DROP COLUMN column_name;
추가
ALTER TABLE [table_name] ADD (column_name data_type(n));
수정
ALTER TABLE [table_name] MODIFY (column_name data_type( ));
DEFAULT VALUE, NOT NULL조건
ALTER TABLE [table_name] MODIFY (column_name column_type DEFAULT 'value' NOT NULL);
>> 이렇게 해주면, 컬럼이 생성되며 default 값은 'value'가 되고, NOT NULL 조건이 형성되게 된다.
이름 바꾸기
ALTER TABLE [table_name] RENAME COLUMN old_column_name TO new_column_name;
--------------------------------------------------------------------------------------------
TABLE
--------------------------------------------------------------------------------------------
테이블명 바꾸기
ALTER TABLE [table_name] RENAME TO [new_table_name];
테이블 통계 정보 생성 하기
ANALYZE TABLE [table_name] COMPUTE STATISTICS;
새로운 정보를 수집하기 전에 기존 정보를 삭제 할때
ANALYZE TABLE [table_name] DELETE STATISTICS;
특정 컬럼에 대한 DATA의 분포
ANALYZE TABLE [table_name] COMPUTE STATISTICS FOR ALL INDEXED COLUMNS;
9iR2경우 테이블을 삭제하고 다시 생성하면,
히스토그램이 또는 기존에 가지고 있던 통계정보들이 날라가는데,
이후 통계 작업을 생성하면 히스토그램이 no에서 yes로 바뀌어져 있는다.
테이블 통계 정보 생성하기 다른 방법
BEGIN
DBMS_STATS.GATHER_TABLE_STATS('shema_name', 'table_name', CASCADE => TRUE);
END;
>> 해당 테이블에 의존된 오브젝트 들도 통계치 데이터를 생성한다. (좀더 자세히 알아봐야겠다.)
>> 700만건, 인덱스 2, PK, 통계치 만드니 1시간 걸렸다. 원래 이렇게 느린가!!!
※테이블에 통계정보를 생성하면, histogram 이 No에서 Yes로 바뀐다.
파티션 추가
ALTER TABLE [table_name] ADD PARTITION [partition_name]
VALUES LESS THAN ('high_value') TABLESPACE [tablespace_name];
--------------------------------------------------------------------------------------------
CONSTRAINT PK
--------------------------------------------------------------------------------------------
PK추가
ALTER TABLE [table_name] ADD CONSTRAINT [index_name]
PRIMARY KEY ( column_name )
USING INDEX
TABLESPACE tablespace_name;
PK해제
ALTER TABLE table_name DROP PRIMARY KEY;
이름 바꾸기 (CONSTRAINT RENAME)
ALTER TABLE [table_name] RENAME CONSTRAINT [before constraint name] TO [after constraint name];
--------------------------------------------------------------------------------------------
INDEX
--------------------------------------------------------------------------------------------
이름 바꾸기
ALTER INDEX index_name RENAME TO new_index_name;
인덱스 삭제
DROP INDEX index_name;
인덱스 생성
CREATE INDEX index_name ON table_name
(column1, column2....)
no/logging
TABLESPACE tablespace_name
no/parallel;
--------------------------------------------------------------------------------------------
STORAGE
--------------------------------------------------------------------------------------------
MAXEXTENT 사이즈 조절
ALTER TABLE table_name STORAGE (MAXEXTENTS number);
해당 TABLE_NAME에 MAXEXTENTS를 NUMBER만큼 늘린다.
--------------------------------------------------------------------------------------------
TABLESPACE
--------------------------------------------------------------------------------------------
테이블 스페이스 변경
ALTER TABLE table_name MOVE TABLESPACE tablespace_name;
ALTER INDEX index_name REBUILD TABLESPACE tablespace_name;
>> 기존 테이블 스페이스를 변경 시켜 준다.
>> REBUILD : 전에는 REBUILD 가 없이, DROP 후 CREATE 했어야 했다.
인덱스는 MOVE가 아닌 REBUILD로 테이블 스페이스를 이동한다.
'database' 카테고리의 다른 글
[db] 정렬, 오름차순, 내림차순 (0) | 2012.09.28 |
---|---|
[oracle] 계정 생성, 추가, 권한, 삭제 (0) | 2012.09.28 |
[oracle] 오라클 관리자 비번 설정, 잃어버렸을 때 (0) | 2012.09.28 |
[db] 테이블 총 갯수 카운트시 성능 저하 (0) | 2012.09.28 |
[db] 삽입 insert, 삭제 delete, 선택 select 쿼리 (0) | 2012.09.28 |
설정
트랙백
댓글
글
[db] 삽입 insert, 삭제 delete, 선택 select 쿼리
* 삽입
insert into [테이블이름] values('값1', '값2', '값3');
*삭제
delete [테이블이름] where [조건식];
※ 테이블 삭제후 commit; 필수 !
* 선택
select [컬럼명] from [테이블이름]
* 수정
update [테이블이름] set '값1', '값2' from [테이블이름]
'database' 카테고리의 다른 글
[db] 정렬, 오름차순, 내림차순 (0) | 2012.09.28 |
---|---|
[oracle] 계정 생성, 추가, 권한, 삭제 (0) | 2012.09.28 |
[oracle] 오라클 관리자 비번 설정, 잃어버렸을 때 (0) | 2012.09.28 |
[db] 테이블 총 갯수 카운트시 성능 저하 (0) | 2012.09.28 |
[db] Alter Table DDL (0) | 2012.09.28 |