[SQL] ODBC ~~ 우어

 ODBC 등록에 대해 알아보겠습니다.
'ODBC 등록..? 아.. 뭔지 모르겠지만 또 어려운 건가 보다.. 지겹다.' 라고 생각하시는 분들을 위해
ODBC 등록에 대해 되도록 쉽게 말씀 드리겠습니다. ('쉽다면서 맨날 어려워' 라고 하시면 할말이 없네요.. T.T)

ODBC 등록이란 우리가 ASP상에서 사용할 데이터베이스가 어떤 것인지 이름표를 달아주는 작업입니다.
수많은 데이터베이스 중에서 우리가 쓸 데이터베이스의 이름과 접속 계정 등을 등록 함으로서
'이 DB는 내가 쓸 것임, 찜했음!'이라고 컴퓨터에게 알려주는 역할을 하는 것이지요.
방금 전에 우리는 'test'라는 DB와 'board'라는 테이블을 만들었습니다.
이제 이 test라는 DB를 '내가 찜했음'이라고 등록해 보도록 하겠습니다.

(난 OLEDB를 하고 싶은데.. 하시는 분들이 혹 계실지 모르겠는데요.. 그분들은 이 동네에서 노실 분들이 아닙니다 - OLEDB가 뭔지 알고 있다는 것 자체가 배신입니다, 배신, 배반형!! -
그분들은 '게시판 만들기 버전 2000' 동네에서 노시면 훨씬 재밌게 노실 수 있을겁니다. ^.^)

자, 그럼 ODBC 등록 방법을 알아보도록 하겠습니다.
다음 그림과 같이 왼쪽 하단에 있는 '시작 -> 프로그램 -> 관리도구 -> 데이터원본(ODBC)'을클릭하세요

<그림 10>

그러면 아래 그림처럼 창이 하나 뜨게 됩니다.

<그림 11>

이곳에서 'System DSN' 탭을 선택하고 'Add' 버튼을 지그시~ 눌러줍니다.
그러면 Create New Data Source가 뜨게 되는데 밑의 그림처럼 'SQL Server'를 선택하시면 되겠습니다.

<그림 12>

'마침'을 누르시면 아래 그림처럼 Data Source 정보를 입력하는 창이 뜨게 되는데요.

<그림 13>

Name에는 이 데이터 소스의 이름을(영어로) 입력하시면 되고요.
(이 이름을 잘 기억하셔야 합니다. 나중에 ASP 코드에서 이 이름으로 불러오게 되니까요.)
중간에 있는 Description은 생략해도 상관없습니다.
Server는 자기 컴퓨터에서 테스트하는 경우 (local)을 선택하신 후 다음을 클릭하시면 되겠습니다.
(혹 다른 컴퓨터와 연결해서 쓰시는 경우 그 컴퓨터의 이름을 선택하시면 됩니다)

그러면 다음 그림처럼 로그인 방법에 대해서 나오게 됩니다..

<그림 14>

선택(라디오) 버튼이 위 아래로 두개가 나오지요?
위의 것은 NT Login ID로 연결하는 것이고, 아래는 SQL Login ID로 연결하는 것입니다.
우리는 아래 'SQL Server authentication..' 을 선택하도록 하겠습니다.
여기서는 테스트 용이므로 ID는 sa(System Administrator), 비밀번호는 없이 넘어가도록 하겠습니다

여기서 잠깐!!

sa는 말 그대로 System Administrator, 즉 모든 권한을 가지고 있는 사람입니다.
그러므로 이 계정은 가급적 쓰지 않으시는 것이 좋습니다. 보안상의 문제가 있기 때문이지요.
(혹시 누가 이 sa의 암호를 알아서 DB에 접근한다면, 여러분이 공들여 쌓아놓은 많은 자료들이
누군가의 악의적인 행동으로 흔적도 없이 사라질 수 있다는 것입니다. 이것은 절대 복구 불가능입니다..)
특히 'ID - sa, password - 없음' 과 같은 기본 세팅은 '날 해킹해줍쇼~~. Please~~'
라고 외치는 것과 다를 바가 전혀(!) 없습니다.
지금은 테스트라서 기본 세팅을 사용하지만, 절대로~!! 실제에서는 이렇게 사용하지 마세요.
계정을 하나 만들어서 사용하시는 것을 추천하며,
sa의 암호는 아무도 모를만한 것으로 꼭~ 바꾸시길 추천합니다.

자, 흥분을 가라 앉히고 다음 단계로 넘어가도록 하겠습니다.
그런데 혹시 다음으로 넘어가지 않고 다음과 같은 그림이 뜨는 분도 있을지 모르겠습니다.

<그림 14-1>
 

이 화면은 sa로 로그인을 하려다가 실패했을때 뜨는 경고창인데요.
sa의 암호가 틀렸을 경우에 나오는 화면입니다.
설치 후 특별히 계정을 건드리지 않았다면 이 화면은 뜨지 않겠지만요.
만약 이 화면이 뜬다면 <그림 6>의 왼쪽편에서 'Security' 폴더를 선택하시고  'Logins'에서
sa의 암호를 바꾸어 주시면 되겠습니다. (암호란을 다 비우고 '확인' 하시면 되겠습니다.)

다음으로 넘어가셨다면 밑의 그림처럼 Change the default database to: 가 있을겁니다. 맨 위에요.

<그림 15>

이 단계는 기본 데이터베이스를 지정하는 단계입니다.
이것을 우리가 만든 데이터베이스인 test로 바꾸어 주시고 다음을 눌러주세요.
그러면 다음 그림이 나오는 화면으로 이동할겁니다.

<그림 16>

이부분에서는 별로 건드릴 것이 없습니다. 오랜 기간 고생하셨습니다. 이제 '마침'을 눌러주세요
그러면 다음 그림처럼 지금까지 우리가 세팅한 내용이 주욱~~ 나오게 됩니다.

<그림 17>

차분하고 경건한 마음으로 아래에 있는 Test Data Source를 지그~시 눌러주세요
그러면 다음과 같은 화면이 나오게 됩니다.

"오우, 난 영어가 정말 싫어!!! 무슨 말인지 모르겠다구!!!" 라는 분 계십니까?
부디 흥분하지 마시고 설명을 들어주세요. 흥분은 흡연과 마찬가지로 건강에 해롭습니다.
위의 그림에서는 단순히 마지막 줄만 보시면 됩니다.

TESTS COMPLETED SUCCESSFULLY! <--- 중요한건 바로 이겁니다.

이게 뭐냐고요?? 밑에 OK 버튼을 보니까 무언가 성공한 느낌이 오지 않습니까?
그렇습니다. 중학교때 영어 좀 못하면 어떻습니까. 눈치로 다~ 해결할 수 있습니다..
테스트에 성공했다.. 즉 지정한대로 데이터베이스에 연결을 시도해 보았더니 잘 되더라~
바로 이런 깊은 뜻이 담겨져 있는 것입니다. 기쁘지 않습니까?

테스트 성공 메시지를 기분좋게 OK로 없애버리신 후, ODBC 화면을 완전히 꺼버리시기 전에
System DSN 탭에서 test가 등록이 되어 있는지 확인해 주십시오. 다음 그림처럼 말입니다.

중간에 test가 등록이 되어 있는 것이 보이시죠?
확인을 하셨다면 이제 모든 준비는 완료가 되었습니다. 축하합니다.

이것으로서 'test'라는 이름의 Database와 'board'라는 이름의 테이블을 만들어 보았고요.
또한 ODBC 등록을 통해서 이제 실제로 사용할 수 있도록 모든 준비를 마쳤습니다.

 

 

======================================================================

이렇게 준비가 끝나시면요...

asp작성하실때 이제 odbc를 연결하는 문장만 사용하시면 됩니다.

간단합니다 ^^연결은.. 아래 taeyo.pe.kr 강의중 ...

======================================================================

 

 

Set objDBConn = Server.CreateObject("ADODB.Connection")

 이 짧은 한줄에 아주 심오한 의미가 담겨져 있습니다.. ^^
 ASP에서는 우리가 DB에 접근할 수 있도록 자체적으로 내장된 컴포넌트를 제공해 주는데, 이 DB 관련
 컴포넌트를 ADO(ActiveX Data Objects) 라고 부릅니다. 그 ADO 라는 컴포넌트 안에는 여러가지 개체가
 존재하는데요. 그 중에서도 DB와의 연결을 담당하는 개체가 방금 사용한 Connection 개체 가 되겠습니다.
 사용 방법은 위에서 보시는 바와 같이 Server.CreateObject 라는 명령어를 이용해서 objDBConn 이라는
 변수에 Connection 개체의 인스턴스를 생성 합니다. 그리고 그 녀석(objDBConn)을 사용하게 되는 것이죠.

 조금 어려운 내용일 것입니다. 이부분은 이해가 잘 안가시더라도 그냥 고개를 끄덕이시면서 따라와 주시기를 
바랍니다. 어차피 이부분은 앞으로 지겹도록 사용해야 하는 부분이고, 사용하다보면 나름대로 정도 들 것이니까요. ^^

 기억해야 하는 것은 이것입니다.
 DB와 연결하기 위해서 Connection 이라는 개체의 인스턴스를 생성했다. 그것이 바로 objDBConn 이라는 녀석이다..

 '인스턴스가 머야? 인스턴트 식품은 알겠는데.. 인스턴스는 도무지 모르겠단 말이쥐.' 라는 분들께서는 보아 주십시오.
 예전에 저는 '서유기'를 참 재미있게 보았던 기억이 납니다. TV 에서도 만화로 자주 방영해 주었고요.
 서유기의 주인공인 손오공은 머리카락을 하나 뽑은 다음에 훅~ 하고 불면 그 녀석이 손오공으로 되는..
 아주 특별한 재주가 있었습니다. 분명 그 녀석도 손오공이 맞지요. 생김새도, 하는 짓도.. (일종의 분신이죠)
 인스턴스가 그와 같은 개념입니다. 원래의 개체(original)가 있는데 그 개체를 복사해서 그 개체가 하는 모든 기능을 자신도 할 수 있게끔 하는 녀석.. 그것이 바로 인스턴스 입니다. 조금은 이해가 되시는지요?
 
 그 objDBConn 이라는 인스턴스를 사용하여 실질적으로 DB와 연결을 하고, 또 원하는 내용을 저장할 수 있게 됩니다.
 그럼 이제 DB와 연결이 이루어지는 38 줄을 보시겠습니다.

 objDBConn.Open "test", "sa", ""

 윗줄에서는 Connection 개체의 메소드인 Open 메소드를 사용하는데요. 이 메소드는 인자 세개를 필요로 합니다.
 첫번째는 DSN(Data Source Name), 두번째는 userID, 세번째는 password 입니다.
 첫번째 인자인 DSN은 우리가 지난 시간에 만들었던 DB의 이름 "test" 가 되겠습니다.
 두번째 인자인 userID는 역시 지난 시간에 ODBC 등록시 입력했었던 "sa"(system administrator)가 되고요.
 세번째 인자인 password는 sa에 대응되었던 비밀번호가 되겠습니다.
 지난 시간에 sa 의 비밀번호를 바꾸시라고 간곡(?)하게 말씀을 드렸었는데...
 그때 혹시 비밀번호를 바꾸셨다면 바뀐 암호를 여기에 입력하시면 됩니다. (참 착한 분들이세요.. ^^)

 

더 궁금한게 있으시다면 taeyo.pe.kr 가셔서 lecture 메뉴가시면

태요님의 강의가 쭉 나옵니다 ^ ^

 

by 시즈모드 | 2007/08/28 14:12 | :: Study SQL

※ 로그인 사용자만 덧글을 남길 수 있습니다.
 

◀ 이전 페이지다음 페이지 ▶