반응형
1. 데이터베이스
데이터베이스란 데이터를 조직적으로 통합하여 구조화시켜 놓은 데이터의 집합체이다.
데이터베이스를 생성하고 검색하며, 추가, 삭제를 원활히 하려는 프로그램의 집합을 데이터베이스 관리 시스템(DBMS : Database Management System) 이라고 한다.

DBMS의 기능
1)데이터 구조 정의
2)데이터 검색 및 갱신
3)데이터 추가 및 삭제
4)복수의 사용자로부터 데이터 처리 동시 실행 제어
5)정보보호

DBMS의 형태중 가장 일반적인 것은 관계형 데이터베이스 관리 시스템(RDBMS : Reation DBMS)이다. 관계형 DBMS 데이터 모델은 테이블의 집합으로 표현되어 있다. 데이터베이스는 한 개 이상의 테이블이 존재한다. 또한 테이블은 여러 개의 레코드로 존재 한다.

테이블의 형식
레코드 : 테이블에 저장된 데이터의 행
필드명 : 항목명
필드 : 테이블에 저장된 데이터의 열


2. SQL SERVER
(1) SQL 질의어
SQL(Structured Query Language)은 데이터베이스를 정의하고 조작하려는 질의어(Query Language)이다.

(2) SELECT 문
테이블에서 레코드를 검색할 때 사용하는 구문

형식>SELECT 필드이름 FROM 테이블이름 [WHERE 조건문]
예>   SELECT name FROM tblMember WHERE num = '4'

(3) INSERT 문
테이블에서 레코드를 삽입할 때 사용하는 구문

형식>INSERT INTO 테이블이름 ( 필드이름 ) VALUES ( '값' )
예>   INSERT INTO tblMember (id, pwd, name) VALUES ('melon', '4444', '김콩쥐')
        INSERT INTO tblMember (age, phone) VALUES ('19', '019-999-9999')

(4) UPDATE 문
테이블에서 레코드를 수정할 때 사용하는 구문

형식>UPDATE 테이블이름 SET 필드이름 = '값' [WHERE 조건문]
예>   UPDATE tblMember SET age = '19'
        UPDATE tblMember SET id = 'grapes', name = '팥쥐' WHERE num = '4'

(5) DELETE 문
테이블에서 레코드를 삭제할 때 사용하는 구문

형식>DELETE FROM 테이블이름 [WHERE 조건문]
예>   DELETE FROM tblMember
        DELETE FROM tblMember WHERE pwd = '4444'

3. ADO
(1) ADO(ActiveX Data Objects)는 DAO(Data Access Objects)나 RDO(Remote Data Objects)보다 데이터베이스 접근 절차를 줄여 프로그래머로 하여금 쉽게 데이터베이스에 접근하여 프로그래밍 할 수 있도록 도와주는 객체 모음이다.

(2) DAO : 관계형 데이터베이스의 구조를 모델화한 객체 클래스의 집합니다. 솜규모의 지역적인 클라인언트/서버 환경에서 데이터베이스 구축이 가능하다.

(3) RDO : SQL Server, Oracle 등을 ODBC를 통해서만 데이터베이스에 접근할 수 있다. 관계형 데이터베이스를 제어하는 객체, 속성, 메소드 등을 지원하며 대규모 관계형 데이터베이스 구축에 사용하기 적합한 방법이다.

(4) ODBC(Open Database Connectivity)

(5)ADO 객체 및 컬렉션
 1) 객체
Connection - 프로그램과 데이터베이스의 연결
Command - SQL 문과 같은 명령을 정의하고 실행
Error - 데이터 접근 실패의 설명
Field - 일반 데이터형을 사용하는 데이터
Parameter - Command 객체와 함께 사용되는 파라미터, 인수 의미
Property - ADO 객체의 특성
Record - 저장된 데이터를 처리
Recordset - 데이터베이스에 대한 명령 실행의 결과 등의 반환 값의 집합
Stream - 전자메일, 웹 페이지와 같은 내용에 접근할 때 사용

 2) 메소드
Errors - 명령에 의해 생성된 오류
Fields - Recordset 객체나 Record 객체의 모든 Field 객체 포함
Parameters - Command 객체의 파라미터 포함
Properties - 객체의 속성 포함

4. Connection 객체
데이터베이스에 연결하여 레코드의 추가, 수정, 삭제 등의 작업을 SQL 문을 사용하여 실행 할 수 있는 객체이다.

(1) Connection 객체
 1) 메소드
BeginTrans - 트랜젝션의 시작
Cancel - 현재 처리중인 실행 작업 중단
Close - 연결과 관련된 객체를 닫음
CommitTrans - 현재 트랜잭션 종료
Execute - 질의문 등을 실행
Open - 데이터 소스에 접근 개시
OpenSchema - 데이터베이스 스키마 정보 반환
RollbackTrans - 현재 트랜잭션의 모든 변경 사항 취소 후 트랜잭션 종료
 2) 속성
Attributes - Connection 객체의 속성 반환
CommandTimeout - 명령 실행 제어 시간
ConnectionString - 데이터베이스 연결 문자열
ConnectionTimeout - 데이터 소스와의 연결 시도 제한 시간
CursorLocation - 커서의 위치 조정
DefaultDatabase - Connection 객체에서의 기본 데이터베이스
Errors - 연결 오류로 인한 Error
IsolationLevel - 트랜잭션의 격리 수준 설정
Mode - 데이터베이스의 데이터 변경에 관한 허용범위 설정
Properties - Connection 객체의 속성 정보 반환
State - 현재 연결 상태 반환
Version - ADO 버전 번호 반환

Connection 객체를 사용하려면 Server 객체의 CreateObject 메소드를 사용하여 객체를 생성해야 한다.

형식> Set 객체 = Server.CreateObject("ADODB.Connection")
예>    Set ConnDB = Server.CreateObject("ADODB.Connection")
         Set objCon = Server.CreateObject("ADODB.Connection")

객체를 생성한 후에는 데이터베이스에 연결하는 작업을 해야 한다. 데이터베이스 연결은 Open 메소드와 데이터베이스 정보를 이용하여 이루어진다.

ODBC 연결방식일 때

형식> 객체.Open DSN|연결문자열 = 경로명 [, 아이디, 비밀번호 ]
예>    ConnDB.Open "DSN=dbMember;UID=member;PWD=1;"
         objCon.Open "Driver={SQL Server}; Server=myserver;
                             Database=dbMember;UID=member;PWD=1;"

OLE DB 연결방식일 때

형식> 객체.ConntionString="Provider = OLE DB 데이터 공급자;
                Data Source = 서버; Initial Catalog = 데이터베이스;
                User ID = 아이디; Password = 비밀번호"
예>    ConnDB.ConntionString="Provider = SQLOLEDB;
                Data Source = (localhost); Initial Catalog = tblMember;
                User ID = member; password = 1;

Connection 객체를 사용하여 연결하고 어떠한 작업을 마친 후에는 데이터베이스와의 연결을 종료하고 객체의 리소스를 해제해야 한다.

Connection 객체의 연결 종료와 리소스 해제의 형식

형식> 객체.Close
         Set 객체 = Nothing
예>    ConnDB.Close
         Set ConnDB = Nothing

'공부 > ASP' 카테고리의 다른 글

Server 컴포넌트  (0) 2011.06.14
Application, Session, Server 객체  (0) 2011.06.13
객체의 구성요소  (0) 2011.06.10
Request, Response 객체  (0) 2011.06.10
Command 객체  (0) 2011.06.10

+ Recent posts