▶ Fields 컬렉션
- 현재 레코드 포인터가 가르키는 레코드 내의 필드 값들을 갖는 컬렉션이다.
- 현재 레코드가 갖는 필드의 수는
' 현재 레코드의 필드 수 objRS.Fields.Count |
를 이용해 구하면 된다.
위의 레코드 셋 그림의 Fields.Count는 3 이다.
- 현재 레코드에서 각 필드의 값을 읽는 방법은 두가지다.
- 필드 이름을 사용하여 현재 레코드의 필드값을 읽는 경우
objRS.Fields.Item("필드이름") or objRS.Fields("필드이름") or objRS("필드이름") |
- 인덱스 번호를 사용하여 현재 레코드의 필드값을 읽는 경우
' 필드이름을 모르는 경우 인덱스 번호를 0부터 시작하여 fields.count -1 까지 objRS.Fields.Item(0) objRS.Fields(0) objRS(0) |
<% ' Recordset 객체를 생성한 후에 ' 데이터베이스에 연결하여 레코드셋을 읽는다. regist란 테이블을 읽음, DSN이름은 "test" Set objRS = Server.CreateObject("ADODB.Recordset") sqlQuery = "SELECT * FROM regist" objRS.Open sqlQuery, "test" ' HTML 문서의 앞 부분을 출력한다. Response.Write "<HTML>" Response.Write "<HEAD>" Response.Write "<TITLE> User Account List </TITLE>" Response.Write "</HEAD>" Response.Write "<BODY>" Response.Write "<I>회원 목록</I>" ' 레코드셋에 레코드들이 있는가 ? If (objRS.BOF and objRS.EOF) Then Response.Write "리턴 결과가 없어요." Else ' 레코드셋에 레코드가 있으면, FCount = objRS.Fields.Count - 1 Response.Write "<TABLE BORDER=1>" Response.Write "<TR>" ' 필드 이름을 출력한다. For i=0 To FCount Response.Write "<TH> " & objRS(i).Name & " </TH>" Next Response.Write "</TR>" ' 레코드들을 하나씩 불러와 필드 수만큼 필드값을 출력한다. While (Not objRS.EOF) Response.Write "<TR>" For i=0 To FCount Response.Write "<TD> " & objRS(i) & " </TD>" Next Response.Write "</TR>" objRS.MoveNext Wend Response.Write "</TABLE>" End If ' HTML 문서의 뒷 부분을 출력한다. Response.Write "</BODY>" Response.Write "</HTML>" ' Recordset 객체를 닫고 파기한다. objRS.Close Set objRS = Nothing %>