'My Works/Oracle'에 해당되는 글 40건

  1. 2013.07.22 [Oracle] 로그인시 대소문자 구분 없애기
  2. 2013.05.13 [Oracle] 인스턴스 추가/변경/삭제 - 글 작성중
  3. 2012.05.11 ORACLE USER 사용기한 무제한으로 변경
  4. 2012.05.11 ORACLE 11G 패스워드 대소문자 구분 문제
  5. 2011.12.27 SQL*Plus에서 & 변수 사용시 set escape 활용
  6. 2011.09.07 [ORACLE] ORA-01555 Snapshot too old 에 대한 정보 - 욱짜님 글 링크
  7. 2010.07.26 [ORACLE] select last rows
  8. 2010.07.23 [ORACLE] '\n' 처리 방법
  9. 2010.06.15 [ORACLE] Windows CMD창 SQL*Plus에서 DB LINK 생성시 발생할 수 있는 에러
  10. 2010.06.10 [ORACLE] 비율 관련

[Oracle] 로그인시 대소문자 구분 없애기

|
1alter system set sec_case_sensitive_logon=false;
And

[Oracle] 인스턴스 추가/변경/삭제 - 글 작성중

|

DBCA를 활용하는 방법과 수동으로 하는 방법이 있습니다.

And

ORACLE USER 사용기한 무제한으로 변경

|
1alter profile default limit password_life_time unlimited;
And

ORACLE 11G 패스워드 대소문자 구분 문제

|
  • 11G 이전 방식으로 돌아가기
    1alter system set sec_case_sensitive_logon = FALSE;


  • password file 또한 대소문자 구분하지 않게 하기
    1orapwd file=orapw entries=100 ignorecase=y
    2Enter password for SYS :


And

SQL*Plus에서 & 변수 사용시 set escape 활용

|
가끔 특정 단어 중간에 &변수를 받고 싶을때가 있다.

그럴 땐 아래와 같이 해보자.
01SQL> create table tab_ampersand_test
02  as
03  select 'OK' as name
04  4    from dual
05  5  ;
06 
07Table created.
08 
09SQL> select name
10  2    from tab_ampersand_test
11  3  ;
12 
13NA
14--
15OK
16 
171 row selected.
18 
19Elapsed: 00:00:00.00
20SQL> set escape |
21SQL> select name
22  2    from tab_&__tab|_test
23  3  ;
24Enter value for __tab: ampersand
25 
26NA
27--
28OK
29 
301 row selected.
31 
32Elapsed: 00:00:00.01
 
물론 &__tab|test 형태로도 사용가능하다. 
And

[ORACLE] ORA-01555 Snapshot too old 에 대한 정보 - 욱짜님 글 링크

|
And

[ORACLE] select last rows

|
oracle table에서 마지막 변경된 row와 그 변경 시간 찾기.
0116:49:53 SQL> create table check_dml_time    
0216:50:22   2  (
0316:50:24   3   fix_column varchar2(10)
0416:50:38   4  ,test_column varchar2(10)
0516:50:49   5  )
0616:50:50   6  ;
07 
08Table created.
09 
10Elapsed: 00:00:00.02
1116:50:51 SQL> insert into check_dml_time values ('FIX','FIRST');
12 
131 row created.
14 
15Elapsed: 00:00:00.01
1616:51:21 SQL> commit;
17 
18Commit complete.
19 
20Elapsed: 00:00:00.01
2116:51:23 SQL> select created, last_ddl_time from user_objects where object_name = upper('check_dml_time');
22 
23CREATED           LAST_DDL_TIME
24----------------- -----------------
2520100726 16:50:51 20100726 16:50:51
26 
271 row selected.
28 
29Elapsed: 00:00:00.02
3016:52:01 SQL> select ora_rowscn from check_dml_time;
31 
32          ORA_ROWSCN
33--------------------
34      11466381392945
35 
361 row selected.
37 
38Elapsed: 00:00:00.01
3916:52:31 SQL> select scn_to_timestamp(ora_rowscn) from check_dml_time;
40 
41SCN_TO_TIMESTAMP(ORA_ROWSCN)
42---------------------------------------------------------------------------
432010/07/26 16:51:23
44 
451 row selected.
46 
47Elapsed: 00:00:00.01
4816:53:31 SQL> update check_dml_time
4916:53:43   2     set test_column = 'UPDATED'
5016:53:50   3  ;
51 
521 row updated.
53 
54Elapsed: 00:00:00.01
5516:53:55 SQL> commit;
56 
57Commit complete.
58 
59Elapsed: 00:00:00.01
6016:54:00 SQL> select scn_to_timestamp(ora_rowscn) from check_dml_time;
61 
62SCN_TO_TIMESTAMP(ORA_ROWSCN)
63---------------------------------------------------------------------------
642010/07/26 16:53:59
65 
661 row selected.
67 
68Elapsed: 00:00:00.00
Tested : Oracle Database 10g Enterprise Edition Release 10.2.0.4.0

원문 링크 : http://laurentschneider.com/wordpress/2006/08/select-last-rows.html
And

[ORACLE] '\n' 처리 방법

|

'\n' 이 문자열 그대로의 의미가 아닌 엔터(줄바꿈)를 말씀하시는 거라면?
CHR(13) || CHR(10) 을 찾아 바꾸시면 됩니다.

http://www.oracleclub.com/article/49759
And

[ORACLE] Windows CMD창 SQL*Plus에서 DB LINK 생성시 발생할 수 있는 에러

|
생성하고자 하는 DB LINK의 password에 마지막 문자에 !가 있는 경우 windows cmd 창에서 SQL*Plus로는 에러가 나는 경우가 있습니다.

Unix 환경에서도 ""로 감싸줘야 에러없이 생성가능합니다.


1CREATE PUBLIC DATABASE LINK db_link_nm
2CONNECT TO id IDENTIFIED BY "password!"
3USING db_service_nm;
And

[ORACLE] 비율 관련

|
01WITH test AS
02(
03SELECT '40' code, 30 cnt FROM dual
04UNION ALL SELECT '30', 50 FROM dual
05UNION ALL SELECT '10', 20 FROM dual
06)
07SELECT code
08, SUM(cnt) cnt
09, RATIO_TO_REPORT(SUM(cnt)) OVER(PARTITION BY GROUPING(code)) * 100 ratio
10FROM test
11GROUP BY ROLLUP(code)
12;
And
prev | 1 | 2 | 3 | 4 | next