'DB'에 해당되는 글 25건

  1. 2013.07.19 sysdate
  2. 2012.07.30 JDBC FailOver
  3. 2012.03.27 MS SQL sequence 만들기
  4. 2011.09.14 DB2 rownum - oracle
  5. 2011.09.14 테라DB 관련 정보

sysdate

2013. 7. 19. 10:23 from DB

sysdate + 1/24 : 한시간 뒤

sysdate + 5/1440 : 5분뒤

 

MONTHS_BETWEEN : 두 날짜사이의 개월수

ADD_MONTHS : ADD_MONTHS( sysdate, 6 ) : 6개월 후의 날짜

NEXT_DAYS( sysdate, 'monday' ) : 지금으로 부터 돌아오는 월요일의 날짜

LAST_DAYS( sysdate ) : 지정된 날짜가 속한 월의 마지막날짜

 

 

'DB' 카테고리의 다른 글

데이터베이스의 역사  (0) 2014.03.06
DBMS (DataBase Management System)  (0) 2014.03.06
JDBC FailOver  (0) 2012.07.30
MS SQL sequence 만들기  (0) 2012.03.27
DB2 rownum - oracle  (0) 2011.09.14
Posted by 에시드 :

JDBC FailOver

2012. 7. 30. 09:17 from DB

현재 오라클 10g 버젼이 RAC 구성(실제 저장공간은 1개, 서버는 2개)이 되어있어 JDBC URL 설정으로 이중화 구성이 가능

JDBC URL 셋팅 시 아래와 같이 failover 구성으로 설정

jdbc:oracle:thin:@(DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=TCP)(HOST=0.0.0.83)(PORT=1521))(ADDRESS=(PROTOCOL=TCP)(HOST=0.0.0.84)(PORT=1521)))(LOAD_BALANCE=OFF)(FAILOVER=ON)(CONNECT_DATA=(SERVICE_NAME=HOSTNM)(SERVER=DEDICATED)))

'DB' 카테고리의 다른 글

DBMS (DataBase Management System)  (0) 2014.03.06
sysdate  (0) 2013.07.19
MS SQL sequence 만들기  (0) 2012.03.27
DB2 rownum - oracle  (0) 2011.09.14
테라DB 관련 정보  (0) 2011.09.14
Posted by 에시드 :

MS SQL sequence 만들기

2012. 3. 27. 09:27 from DB

 

ORACLE에는 sequence가 있듯,

MS SQL에는 자동증가로  IDENTITY가 있다. 하지만 칼럼타입이 int 같은 정수여야만 사용가능하다...

 

문제는 시퀀스 칼럼타입이 INT가 아니고 varchar타입이다.

(컬럼타입을 바꿔서 해결하면 좋겟지만 현실은 냉정하듯 해당컬럼의 타입을 바꿀수 없는 상황이다.)

그리고 테이블에 동시에 여러 곳에서 입력이 빈번하게 일어난다고 한다. 입력시 키값이 듀플리케이션이 발생한다고 한다.  

 

1. MS SQL 시퀀스 만들기


 ①. Create a sequence table

CREATE TABLE SEQ_TAB
(
   seq_name   VARCHAR(64) PRIMARY KEY,
   cyclic_yn   CHAR(1) NOT NULL,
   seq_value   INT NOT NULL
)

 

 ②. Create a procedure to get sequence number
 

----------------------------------------------
-- 시퀀스 갖고 오는 프로시저
-- 작업성공이면 0보다 큰 수, 실패면 음수 반환
----------------------------------------------
create procedure sp_get_nextval
  @p_seq_name varchar(100),
  @v_seq_value int output
as
begin
  declare @v_cyclic_yn char(1)

  set @v_seq_value = -1

  begin transaction trans1

  select @v_cyclic_yn = cyclic_yn from seq_tab where seq_name = @p_seq_name

  if (@@rowcount = 0)
    return @v_seq_value -- 찾는 자료 없음
  else
  begin
    update seq_tab set @v_seq_value = seq_value = seq_value + 1 where seq_name = @p_seq_name

    -- 시퀀스가 순환이고, 현재 값이 int의 최대 값이면 0으로 되돌린다.
    if (@v_seq_value = 2147483647) and (@v_cyclic_yn = 'y')
    begin
      update seq_tab set seq_value = 0 where seq_name = @p_seq_name
    end

    commit transaction trans1
  end

  return @v_seq_value
end

 

 

1. 시간값으로

시간값으로 천분의 일초까지 지정 한후 별도의 sequence 테이블을 생성 201203270900000 + 0000  네자리를 추가한다.

 


 

'DB' 카테고리의 다른 글

sysdate  (0) 2013.07.19
JDBC FailOver  (0) 2012.07.30
DB2 rownum - oracle  (0) 2011.09.14
테라DB 관련 정보  (0) 2011.09.14
MSSQL TCP/IP 설정  (0) 2011.09.14
Posted by 에시드 :

DB2 rownum - oracle

2011. 9. 14. 20:40 from DB

* 반환되는 행의 갯수 제한 하기!

 

oracle 

    select *

      from table

     where rownum <= 10

 

 

 

db2

   select *

       from table

    fetch first 10 row only

 

  select *

     from ( select row_number() over (oreder by id)  as r_number

                      from table)

  where r_number <= 10


'DB' 카테고리의 다른 글

JDBC FailOver  (0) 2012.07.30
MS SQL sequence 만들기  (0) 2012.03.27
테라DB 관련 정보  (0) 2011.09.14
MSSQL TCP/IP 설정  (0) 2011.09.14
toad 단축키  (0) 2011.09.14
Posted by 에시드 :

테라DB 관련 정보

2011. 9. 14. 20:29 from DB
 

테라데이터 DB관련 정보

http://www.teradata.com

 

WebLogic Application Server "How-To" Guide   

WebSphere Application Server "How-To" Guide   

ColdFusion Application Server "How-To" Guide   

JBoss Application Server "How-To" Guide   

SAP Application Server "How-To" Guide   

Tomcat Application Server "How-To" Guide   

Teradata JDBC Driver User Guide   

 

 

 

 

 테라 jdbc 웹로직에서 풀생성시 유의할 점.

 

D:\bea\user_projects\domains\mydomain

 

startWebLogic.cmd에

set CLASSPATH=%WEBLOGIC_CLASSPATH%;%POINTBASE_CLASSPATH%;%JAVA_HOME%\jre\lib\rt.jar;%WL_HOME%\server\lib\webservices.jar;%WL_HOME%\server\lib\tdgssjava.jar;%WL_HOME%\server\lib\terajdbc4.jar;%CLASSPATH%

클래스패스 지정해줬다.

이클립스에서 드라이버를 못잡아서..

그리고

 

tdgssconfig.jar

tdgssjava.jar

terajdbc4.jar

 

세개의 자르중에 컨피그넘은 8.1웹로직에선 필요없는 놈이다. 이넘은 넣지말고 이 자르안에 xml을 복사해서 라이브러리 경로와 mydomain에 떨궈줬다?

 

 


'DB' 카테고리의 다른 글

MS SQL sequence 만들기  (0) 2012.03.27
DB2 rownum - oracle  (0) 2011.09.14
MSSQL TCP/IP 설정  (0) 2011.09.14
toad 단축키  (0) 2011.09.14
오라클 XE 세션처리량 확인 및 늘리기  (0) 2011.09.07
Posted by 에시드 :