[ASP 09.07] 05. ASP정리 데이터베이스 조작
2010. 9. 7. 14:34ㆍWeb/ASP
반응형
DB에 조작언어는 나중에 DB에서 정리 해볼 것이다. 이외에 Asp에서 어떻게 사용하나를 정리 해보겠습니다.^^
1.ADODB.Connection 개요
Connection개체는 Asp에서 DB프로그래밍을 위해 데이터 저장소에 대해 연결을 제공 완벽하지는 않지만 질의에 대한 결과로 레코드셋을 반환하는 등 다양한 기능을 제공 연결 설정에 대한 오류를 기술하는 Error컬렉션과 데이터베이스 연결환경정보가 저장된 Properties 컬렉션을 포함
Connection 개체의 주요 메소드
BeginTrans | 트랜잭션을 시작 CommitTrans, RollbackTrans와 함께 사용 |
Cancel | 현재 처리중인 비동기 Execute나 Open메소드의 실행을 중단 |
Close | 열려있는 연결과 연결에 의존하는 모든 개체를 닫음 |
CommitTrans | 현재 트랜잭션을 정상적으로 종료시킴 |
Execute | 질의문이나 저장 프로시저 등을 실행 인수 사용에 따라 Recordeset개체를 반환 |
Open | 데이터 소스에 대한 접속을 시작 |
RollbackTrans | 현재의 트랜잭션 동안 이루어진 모든 변경사항을 취소하고 트랜잭션을 종료시킴 |
Connection 개체의 주요 속성
Attributes | Connection 개체의 속성을 Long형의 숫자로 반환 기본값은 0 |
CommandTimeout | 명령 실행제한 시간 지정 기본값은 30초 |
ConnectionString | 데이터베이스 연결 문자열 |
ConnectionTimeout | 데이터 소스와의 연결 시도 제한 시간 기본값 15초 |
DefaultDatabase | Connection 개체에서 사용될 기본 데이터 베이스 |
Errors | Provider와 관련한 연결 오류로 발생된 Error개체를 포함하는 컬렉션 |
Connection.Execute 사용법
실제로 ASP에서 DB를 사용하는데 명령을하는 메소드이다. 중요하므로 잘알아 두길 바란다.
Connection.Execute(CommandText,[RecordsAffected],[Options]) |
(1). CommandText: Execute메소드를 통해 데이터베이스에서 실행할 명령어의 본문을 의미
(2). RecordAffected: 데이터베이스에서 CommandText를 실행한 결과, 적용된 레코드의 숫자를 Long형으로 반환
(3). Options: CommandText의 옵션을 설정, CommandText의 형태를 정의하는 CommandTypeEnum과 질의 결과 처리를 정의하는 ExecuteOptionEnum의 사용할 수 있음
Set objRs=objDB.Execute(query,,1) |
2.ADODB.Recordset개체
Open메소드를 이용하여 레코드셋 구성 Recordset개체에서 사용빈도가 가장 높은 기본 메소드임 Open메소드를 이용하여 DB에 질의문을 전송하고 그 결과를 반환받아 레코드 셋을 만듬 레코드셋은 환경 설정 방법에 따라 여러 형태의 특성을 갖는 독특한 구조로 구성되며 Recordset.Open메소드로 데이터 소스에 질의 할때 사용
Recordset.Open Source, ActiveConnection, [CursorType],[LockType], [Options] S |
(2) ActiveConnection - Source인수에서 정의한 질의문을 실행할 대상이 되는 데이터 연결을 의미
(3) CursorType - 커서는 레코드셋에서 특정레코드를 가르키는 일종의 포인터임
- 커서는 앞으로만 이동하지 않고 뒤로도 이동하는데 코드를 사용하면 커서의 이동과 저장된 레코드
갱신여부를 파악할 수 없음
- CursorType은 4가지 종류로 나눠짐
(4) LockType - 데이터 스토어로 부터 다운받은 레코드셋의 내용을 변경할 수 있는지 여부를 상수값으로 나타냄
(5) Options - Open메소드의 다섯 번째 인수는 Options로 메소드 실행 시 전송되는 Source의 종류가 어떤 것인지를 정의하는 부분
타입 | 상수 | 값 | 설명 |
Read-Only | adLockReadOnly | 1 | 레코드셋을 업데이트가 불가능한 읽기 전용 레코드셋으로 만든다. 기본값이다. |
Pessimistic | adLockPessimistic | 2 | 레코드셋에서 수정을 시작하는 순간, 데이터스토어의 레코드 복사본이 잠김 상태로 들어가 다른 사용자가 변경할 수 없도록 만든다. 레코드 수정이 끝나고 Recordset.Update 메소드를 사용하여 변경 사항을 저장하면 잠금이 다시 풀린다. |
Optimistic | adLockOptimistic | 3 | 레코드 수정시에는 잠금이 이루어지지 않고, Recordset, Update 메소드를 통해 변경 사항이 저장되는 순간 잠금 상태로 들어간다. 같은 시점에 두명이 동시에 업데이트하는 순간 문제가 발생할 가능성이 있다. |
Optimistic Batch | adLockBatchOptimistic | 4 | 여러개의 레코드가 실제로 업데이트 될 경우 잠금 상태로 들어간다. |
Recordset개체의 주요 속성
AbsoulutePage | 페이지 기능이 부여된 레코드셋에서 현재 페이지 지정 |
EOF | DB에 질의 결과 검색된 내용이 없으면 EOF속성이 참 |
CursorType | 레코드셋이 사용하는 커서의 종류를 설정 페이징을 하기 위해서는 커서 타입이 Static이상이어야 함 |
PageCount | 페이지 기능을 사용할 때 레코드셋에 저장된 레코드가 총 몇페이지 인지를 반환 |
PageSize | 페이지 기능을 사용할 때 한 페이지 당 레코드 수를 지정 |
RecordCount | 현재 레코드셋 개체에 저장된 레코드의 개수를 반환 |
Recordset개체의 주요 메소드
Close | 현재 레코드셋 개체를 닫음 |
Move(n) | n수 만큼 레코드를 이동함 |
MoveFirst MoveNext MovePrevious MoveLast |
커서의 위치를 처음, 다음, 이전, 마지막, 레코드로 이동 |
Open | 연결된 DB로 질의문을 전송하고 레코드셋을 열기 |
GetRows | 레코드셋에 저장된 데이터를 배열로 전환하기 |
반응형
'Web > ASP' 카테고리의 다른 글
[ASP 09.07] 07. ASP정리 Project (0) | 2010.09.07 |
---|---|
[ASP 09.07] 06. ASP정리 Command (0) | 2010.09.07 |
[ASP 09.07] 04. ASP정리 Server개체 (2) | 2010.09.07 |
[ASP 09.06] 03. ASP정리 상태 유지 !! (0) | 2010.09.05 |
[ASP 09.05] 02. ASP정리 데이터전달!! (0) | 2010.09.05 |