분류 전체보기

반응형
Oracle Instantclient 적용 가이드

오라클 기반 개발 환경을 로컬에 구성하려면 오라클 클라이언트를 로컬환경에 설치해야 한다.

하지만 클라이언트 설치 없이 접속이 가능하도록 "instant Client"를 오라클에서 내놓았다.. 👍🏽👍🏽

설치가 필요없고 오라클 사이트에서 개발환경에 맞는 버전을 다운받은 후 폴더에 저장하고 경로를 지정하면 아주 쉽게 Oracle 개발 환경을 구축할 수 있다.

 

1. 오라클 홈페이지에서 instant Client 다운 (환경에 맞는 32bit, 64bit)

http://www.oracle.com/technetwork/database/features/instant-client/index-097480.html" target="_blank" rel="noopener" data-mce-href="http:// http://www.oracle.com/technetwork/database/features/instant-client/index-097480.html">http:// http://www.oracle.com/technetwork/database/features/instant-client/index-097480.html 

 

Oracle Instant Client - Free tools and libraries for connecting to Oracle Database

 

www.oracle.com

 
2. 압축을 풀고 원하는 디렉토리에 위치
 D:/oracle_instantclient 
 
3. 환경변수 설정  

 

 기존 PATH에         -> ;D:/oracle_instantclient; 
 신규 ORACLE_HOME    -> D:/oracle_instantclient 
 신규 TNS_ADMIN 생성  -> D:/oracle_instantclient (TNSNAMES.ORA 경로 path)
 신규 NLS_LANG 생성   -> KOREAN_KOREA.AL32UTF8 / KOREAN_KOREA.KO16MSWIN949 (DB 캐릭터셋에 맞춰서)
 
⚠️ 주의사항

오라클 instantclient 를 8개월간 잘 사용했었는데 최근 신규 프로젝트에서NLS_LANG 과 관련된 문제에 직면하게 되었다. 클라이언트 버전으로 인스톨을 한 경우에는 NLS_CHARACTERSET 을 설치시에 설정을 하지만, 오라클 instantclient를 사용할 경우는 반드시 환경변수에 추가 하거나 HKEY_LOCAL_MACHINE\SOFTWARE\ORACLE 에 NLS_LANG 문자열 값으로 캐릭터 셋을 지정해 줘야 한다. 이 부분을 지나치면 오라클 패키지 및 프로시저 컴파일시에 정상적인 한글이 깨지는 상황 발생, 다른 동료가 생성한 패키지에 한글이 깨지는 경우가 발생...민폐 OTL ...꼭 챙기자!!

CHARACTERSET 조회

SELECT * FROM sys.PROPS$ WHERE NAME = 'NLS_CHARACTERSET'; 
 
4. instanClient 폴더에 TNSNAMES.ORA 파일 생성 후 저장.
EXTPROC_CONNECTION_DATA =   (DESCRIPTION =     (ADDRESS_LIST =       (ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC))     )     (CONNECT_DATA =       (SID = PLSExtProc)       (PRESENTATION = RO)     )   ) ALIAS =    (DESCRIPTION =     (ADDRESS_LIST =       (ADDRESS = (PROTOCOL = TCP)(HOST = DB 호스트)(PORT = 1521))     )     (CONNECT_DATA =       (SERVICE_NAME = DB네임)       (SRVR = DEDICATED)     )  ) 

DB Tool을 이용하여 접속이 정상적으로 되는지 테스트를 진행합니다.

현재 SQLGate, PL/SQL Developer 접속 테스트는 진행해봤고 나머지는 테스트 gogogo~!

 

반응형
반응형

드디어!!!!! 웨버 스모키조 37을 구매했습니다.

비어캔치킨을 하기에는 높이가 낮아서 인터넷을 마구마구 뒤적 거리던 중~

이웃블로그에서 확장툴 이용기를 보고 얼릉 만들어봤어요.

 

우선 재료는 택배 배송왔던 박스를 이용했어요

알루미늄 호일, 알루미늄 테이프 요렇게 준비가 되면 확장툴을 만들 수 있어요.

 

 

 

 

박스를 높이 20센치 정도로 컷트 했습니다. 비어치킨 해먹을 수 있을 정도에 높이면 되겠네요.

이제 알루미늄 호일과 알루미늄 테이프로 이쁘게 옷을 입혀 볼게요.

 

 

 

이음새 부분을 알루미늄 테이프로 고정시켜 줬어요.


 

 

호일로 여러겹 감싸서 이음새 부분은 알루미늄 테이프로 마감처리를 해줬어요.


 

 

 

드뎌 완성 됐습니다.

만들고 나니 아주 뿌듯하네요ㅎㅎ

이번 캠핑에 비어캔치킨 고고씽~

반응형

'일상들' 카테고리의 다른 글

뚝딱이를 위한 생활용품  (2) 2015.03.08
뚝딱 웰컴!  (0) 2015.03.08
네스프레소 시티즌앤밀크~  (0) 2015.02.16
포도나무 훈연칩  (0) 2014.04.20
[장비] 삼각스토퍼, 콜팩, 카라비너  (0) 2014.02.13
반응형

지난번 캠핑때 비가 많이 왔었는데...그만 타프가 무너졌어요ㅜㅜ 
그래서 좀 더 튼튼하게 보금자리를 준비하기 위해 장비 몇 개 구매했어요~

 

순정용 땅콩스토퍼는 너무작아서 로프를 좀 더 견고하게 당기는데 한개가 있어서 이번기회에 삼각스토퍼로!

기존 타프용 순정팩은 아무래도 허술한면이 있더군요 그래서 수소문끝에 콜팩을 구매했어요~ 

 


마지막장비는 카라비너 에요 팩부분에 연결고리로 사용시 위험하다는 이야기를 듣고 타프 상단 메인줄에 고리로만 사용하려고 입양했어요~ 


아직 캠핑을 가지못해 실제 사용은 못해봤지만 보기만해도 듬직하네요ㅋㅋㅋ 

삼각스토퍼 텐트줄에 연결한 모습 큭큭

확실히 편하네요 땅콩스토퍼에 비해서~

굿입니다!!

 

 

반응형

'일상들' 카테고리의 다른 글

뚝딱이를 위한 생활용품  (2) 2015.03.08
뚝딱 웰컴!  (0) 2015.03.08
네스프레소 시티즌앤밀크~  (0) 2015.02.16
포도나무 훈연칩  (0) 2014.04.20
[장비] 웨버 스모키조 37 확장툴 만들기  (0) 2014.02.13
반응형
ms-sql getDate() format
자주 안쓰다 보면 이저리버리기 마련이죠..정리가 필수입니다.

기억 보단 기록이 중요합니다.

--Getdate() 
Select Getdate() 

--YYYY/MM/DD 
Select Convert(varchar(10),Getdate(),111) 

--YYYYMMDD 
Select Convert(varchar(10),Getdate(),112) 

--HH:MM:SS 
Select Convert(varchar(8),Getdate(),108) 

--HH:MM:SS:mmm 
Select Convert(varchar(12),Getdate(),114) 

--HHMMSS 
Select Replace(Convert(varchar(8),Getdate(),108),':','') 

--HHMMSSmmm 
Select Replace(Convert(varchar(12),Getdate(),114),':','')

--YYYY/MM/DD HH:MM:SS 
Select Replace(Convert(varchar(30),Getdate(),120),'-','/') 

--YYYY/MM/DD HH:MM:SS 
Select Replace(Convert(varchar(30),Getdate(),121),'-','/') 

--YYYY/MM/DD HH:MM:SS 
Select Convert(varchar(10),Getdate(),111) + Space(1) + Convert(varchar(8),Getdate(),108) 

--YYYYMMDDHHMMSS 
Select Convert(varchar(10),Getdate(),112) + Replace(Convert(varchar(8),Getdate(),108),':','')

 

반응형

[C#] short url 생성(bit.ly)

2014. 2. 13. 13:16
반응형
  • C# bit.ly API 연동 방법

SNS를 연동하다 보면 url에 파라미터가 길게 늘어진 url이 보기 거슬릴때가 있다.  

bit.ly를 활용한 long url을 short url로 make해주는 api가 있는데 매우 효율적인 거 같다. 

다만, 일별 쿼터 제한이 있어 동적으로 사용할 경우 제한 횟수 이상의 요청은 원본 URL로 처리가 됨.

사용한 방식은 클라이언트에서 ajax로 bit.ly api를 호출하고 리턴 받은 short url이 쉐어되도록 개발을 진행.. 우선 개발을 하려면 bit.ly 사이트에서 계정을 발급 받아야 함. 

-share.js 

자바스크립트로 short url 생성 방식

<script>

function facebook_sharer(sharer_title, content_title, sharer_URL) {
    sharer_URL = fn_bitly(sharer_URL);
    var sharer_str = encodeURIComponent(sharer_title.replace(/#/gi, "") + content_title);
    var sharer_url = encodeURIComponent(sharer_URL);
    window.open("http://www.facebook.com/sharer.php?u=" + sharer_url + "&t=" + sharer_str, "facebook_sharer", "toolbar=no,location=no,directories=no,status=no,menubar=no,scrollbars=yes,resizable=no,width=800,height=600");
}

function url_sharer(sharer_URL) {
    sharer_URL = fn_bitly(sharer_URL);
    bResult = window.clipboardData.setData("Text", sharer_URL);
    if (bResult) alert('복사되었습니다. 블로그에서 붙여넣기(Ctrl+V)를 이용하세요.');
}

//Short Url Maker
function fn_bitly(longUrl) {
    var shortUrl = "";
    if (longUrl != "") {
        $J.ajax({
            url: '/ajax/bitlyToJson.aspx', //bit.ly api로 다이렉트로 호출해서 short url을 받아도 무방.
            type: 'POST',
            dataType: 'json',
            data: {
                longUrl: longUrl
            },
            timeout: 1000,
            async: false,
            error: function(xhr) {
                //alert('xhr (' + xhr.status + ':'+ xhr.statusText + ':' + xhr.responseText + ')');
            },
            success: function(response) {
                _jsonObject = response.data;
                shortUrl = _jsonObject.url;
            }
        });
        if (shortUrl == "") shortUrl = longUrl;
    }
    return shortUrl;
}

</script>
-bitlyToJson.cs

c# 에서 short url 생성 방식
 

/******************************************************************************
 *  제  목 : bitlyToJson
 *  작성자 : 이종필
 *  작성일 : 2012-11-08
 *  설  명 : Long Url -> Short Url로 Json 리턴
 ******************************************************************************/

#region shortUrl 생성
    ///    /// https://bitly.com/ 사이트에서 발급
    /// format : json
    /// apiKey : R_b7b8ddaf4734eba87237d5ad*******
    /// login : leejon****
    ///    
    private void MakeShorURL(string longurl)
    {
        StringBuilder sb = new StringBuilder();

        //base
        sb.Append(@"http://api.bit.ly/v3/shorten?login=leejon****l&apiKey=R_b7b8ddaf4734eba87237d5ad5*****&format=json&longUrl=");
        //server page
        sb.Append(Server.UrlEncode(longurl));

        // Make Short URL
        WebClient client = new WebClient();
        string shorturl = client.DownloadString(new Uri(sb.ToString()));

        Response.Write(shorturl);
    }

#endregion
결과는 아래와 같이 JSON, XML 데이타로 리턴된다. 
호출하는 데이타 format (json, xml) 파라미터로 제어 가능.
 
-JSON
 
{ "status_code": 200, "status_txt": "OK", "data": { "long_url": "http:\/\/www.naver.com\/", "url": "http:\/\/bit.ly\/YNBfGD", "hash": "YNBfGD", "global_hash": "md7fw", "new_hash": 0 } } 
 
-XML
<response>
 <status_code>200</status_code>
 <status_txt>OK</status_txt>
 <data>
  <url>http://bit.ly/YNBfGD</url>
  <hash>YNBfGD</hash>
  <global_hash>md7fw</global_hash>
  <long_url>http://www.naver.com/</long_url>
  <new_hash>0</new_hash>
 </data>
</response>

 

반응형

+ Recent posts

반응형