프로그래밍 관련/DB SQL

ADO(ActiveX Data Object) - CONNECTION객체

AlrepondTech 2011. 2. 9. 15:30
반응형
 
 
 

 

 

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

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

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

 

 

 

출처: 

http://blog.naver.com/ddowner?Redirect=Log&logNo=140048679108

 

 ADO(ActiveX Data Object) 는 데이터베이스, 기타 데이터 정보에 접근할 수 있는 개체로써  데이터베이스에 접근하려면 OLEDB나 ODBC를 사용하여야 한다. 즉 사용하기 쉽고 확장 가능한 기술로 웹상에서 데이터베이스를 조작할 수 있는 기능을 제공한다.

 

 OLEDB란 표준 COM 인터페이스를 제공하는 시스템 수준의 프로그래밍 인터페이스로서 데이터베이스 관리 시스템 기능을
말한다. ODBC(Open Database Connectivity)는 데이터베이스에 접속 할 수 있도록 프로그램과 db간에 의사소통을 해준다. 
 

( 현재 많이사용되고 있음. 속도,성능면에서 좋다. )

 
 ODBC는 DB와의 연결이란 Driver란 의미를 부여할 수 있고 OLEDB는 데이터를 제공하는 주체 Provider란 의미로 표현하고
있다. 

( 과거에 많이씀. )

 


 
   

 


DataBase 연결-OLEDB 


Provider=SQLOLEDB; Data Source=컴퓨터이름이나 ip 주소 또는 dns이름; Initial Catalog="db명" ; 
UID="서버사용자ID" ; PWD="비밀번호"; 
 
예) Set con = Server.CreateObject("ADODB.Connection")   '--- db 연결 
      connString="provider=sqloledb; Data Source=211.241.18.21; Initial Catalog=testasp; uid=sa; PWD=;" 
      con.Open connString 
 
  
DataBase 연결-ODBC 
  ODBC를 연결하는 방법에는 두가지가 있다.
 
첫번째(관리도구 설정없이) : DSN=“ODBC로 연결한 별명";uid="사용자id" ; pwd="비밀번호" 
  
두번째(관리도구 설정후 그 근거로 작업)
              

‘---odbc 설정하기


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

 '--- db 연결

             connString=“ DSN=testasp ; UID=sa ; PWD=;” 

'--testasp는 DB명이 아니라 DB명을 가르키는 이름이다.


             con.Open connString 
   
데이터베이스 처리단계
 객체를 생성 -> 데이터 원본이름과 연결 -> 쿼리 명령을 수행 -> 그 결과를 받아옴 -> 보여준다. 
-> 데이타베이스와 연결을 끊는다. -> 리소스를 해제 
  
<%

‘ --- 객체를 생성

Set db = Server.Createobject("Adodb.Connection")

' --- 데이터 원본이름과 연결 


db.Open "Provider=sqloledb; uid=sa;pwd=;data source=localhost"

' --- db 생성


sql = "create database mysampledb " 
db.Execute sql

' --- 테이블 생성


sql = “create table mysampledb ..mytable ( no int not null, name char(20) , age int )"
db.Execute sql

' --- 객체 닫고 리소스 해제하기  


db.Close
Set db=Nothing
%> 
  
ADO 객체 
•Connection 객체 : ADODB.Connection 
    데이타베이스와 연결을 할 수 있게 해주는 객체 
•Command 객체 : ADODB.Command
    명령을 실행해주는 객체 
•Recordset 객체 : ADODB.Recordset
    데이터베이스로 연결한뒤 원하는 데이터를 실행하여 얻어온 결과를 담는 객체 
  

ADO 객체-connection


•데이터 원본에 연결하기

‘---먼저 Connection 객체를 생성한다. 

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

 
‘---데이터 원본에 연결한다. 

 

[ ODBC 방법 ]


첫번째 방법. Odbc 에서 Dsn을 이용하여
    Db.Open " DSN=db명 ; UID=사용자id ; PWD=비밀번호 "
두번째 방법. 연결문자열을 이용하여
    Db.Open " Driver={sql server} ; Server=ip주소; Database=db명 ; uid=사용자id ; pwd=비밀번호"

  Open 메쏘드를 통해 해당 데이터베이스와 연결할 수 있다.

  ODBC에 설정한 Database Source Name(DSN)과 사용자 아이디(계정), 비밀번호를 입력하면 된다.  

[ OLEDB 연결방법 ]


DB.OPEN "Provider=SQLOLEDB ; User ID=sa ; Password= ; initial Catalog=mydb ;
Data Source=localhost" 

•Query 실행하기
‘--Execute 메서드의 사용방법으로 두가지가 있다. 
‘--레코드 셋을 반환하지 않는 경우와 반환하는 경우이다. 

 
db.Execute "Delete from mydb where no=5"    

 ‘ 레코드 셋을 반환하지 않는 경우 ( SELECT 이외의 쿼리문 )

Set rs = db.Execute ("select * from mydb")      

 ‘ 레코드 셋을 반환하는 경우 ( SELECT문)

      

↑( 레코드셋 객체 : 실행된 SELECT문의 결과값을 저장하고 있는 기억장소 )

 

※SELECT 문을 실행했을때 출력값(데이터)이 없더라도 레코드셋은 생성된다.
 ( 테이블을 생성했을때 테이블만 존재하고 내용이 없는경우) 
   즉, 생성된 레코드셋 안에 데이터가 없는 경우도 있다는 뜻이다. ※
 
★  엮인글(BOF,EOF) 꼭 참고할것.. 

  
•데이터베이스 닫기
  

‘--모든 작업을 마친 후에는 연결을 닫아주고 리소스를 해제해주는 작업이 필요하다.

 
Db.Close    

‘--Db.Close를 통해 연결을 종료하고

Set Db = Nothing   

‘--Set DbCon=Nothing으로 리소스를 해제한다. 


 

 

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

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

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

 

 

반응형