달력

52024  이전 다음

  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
  • 29
  • 30
  • 31

DB Helper

C# 이야기 2015. 12. 11. 19:29

대부분의 회사에서는 이미 만들어진 녀석을 사용하기 때문에 이런걸 작성해야 하는 이유가 하등 없지만서도 -_-ㅋ

 

가끔 제로 베이스에서 코딩을 해야 하는 경우가 왕왕 나오기 때문에 정리해둠.

 

MS-SQL

ORACLE

OLEDB

CACHE

DBF

 

위 5가지에 대한 연결을 지원함.

소스는 VS 2010으로 작성되었음.

 

DBHelper.zip

 

Posted by 은하비류연
|

Oracle Merge

ORACLE 이야기 2015. 12. 11. 16:07

MERGE INTO [TABLE_NAME] A
   USING DUAL
      ON ( [PK] = [VALUE])


   WHEN MATCHED THEN
      UPDATE

            SET [COLUMN_NAME] = [VALUE]
   WHEN NOT MATCHED THEN
      INSERT
      (

         [COLUMN_NAME]
      )
      VALUES
      (
         [VALUE]
      );

 

 

입력 시 키 값이 중복되는 경우는 UPDATE, 키 값이 존재하지 않는 경우는 INSERT 해야 할 경우에 사용.

 

 

'ORACLE 이야기' 카테고리의 다른 글

Oracle DYNAMIC WHERE CLAUSE  (0) 2015.12.11
Oracle Array 처리.  (0) 2015.12.11
Oracle LISTAGG  (0) 2015.12.11
Oracle DB LINK  (0) 2015.12.11
IN 절 SPLIT 함수 튜닝 힌트  (0) 2015.12.11
Posted by 은하비류연
|

where 절의 조건을 동적으로 처리하는 방법.

 

원리는 OR절에 의한 트릭인데.

 

 1 = 1 or col1 = someValue

 

인 경우 앞의 조건을 만족하면 뒤의 조건을 무시하기 때문에 사용할 수 있는 방법이다.

 

SELECT * FROM emp
  WHERE (1 = 1 OR job = 'SALESMAN')
    AND (1 = 1 OR TO_CHAR(hiredate,'YYYYMMDD') = '19810220')
    AND (1 = 0 OR TO_CHAR(hiredate,'YYYYMMDD') > '19820101')
    AND (1 = 1 OR sal = 1600);

 

 

** 조건절에 기술되는 항목이 많을수록 성능은 개판이 되니 주의.

'ORACLE 이야기' 카테고리의 다른 글

Oracle Merge  (0) 2015.12.11
Oracle Array 처리.  (0) 2015.12.11
Oracle LISTAGG  (0) 2015.12.11
Oracle DB LINK  (0) 2015.12.11
IN 절 SPLIT 함수 튜닝 힌트  (0) 2015.12.11
Posted by 은하비류연
|