책 내용 질문하기
조건입력과 select 관련 질문있습니다.
도서
2018 시나공 컴퓨터활용능력 1급 실기(엑셀, 액세스 2010 사용자용)
페이지
155
조회수
35
작성일
2018-08-27
작성자
탈퇴*원
첨부파일

3. 학생정보 폼의 txt조회 컨트롤에 학번을 입력하고 <찾기>버튼(cmd찾기)을 클릭하면 다음과 같은 기능을 수행하도록 구현하시오.

- 입력된 학번에 해당하는 학생의 정보를 찾아 표시하도록 하시오.

- 현재폼의 RecordsetClone 속성과 BookMark 속성, FindFirst 메서드 등을 이용할 것.

4. 봉사내역 폼에서 txt학번 컨트롤을 클릭할 때 다음과 같은 기능을 수행하도록 구현하시오.

- 학번이 txt학번에 표시된 값과 같은 학생의 이름, 학과, 전화번호를 표시한 메시지 박스를 표시할 것

- Ado 개체를 이용할 것

3번의 답은 me.recordsetclone.findfirst "학번 = '" & txt조회 & "'" 이거였습니다.

근데 저는 me.recordsetclone.findfirst "select * from 학생 where 학번 = '" & txt조회 & "'" 이걸로 했어요.

그래서 옹.. 조건은 select가 없어도 되나 보네? 하고 4번으로 넘어갔죠

근데 4번에서 제가 입력한 건데

Dim rs As ADODB.Recordset

Set rs = New ADODB.Recordset

rs.ActiveConnection = CurrentProject.Connection

rs.Open "학번 = '" & txt학번 & "'"

MsgBox rs!이름 & "/" & rs!학과 & "/" & rs!연락처

3번에서 제가 내린 결론이 틀렸단 걸 증명하듯 답은

rs.Open "select * from 재학생 where 학번 = '" & txt학번 & "'"

이거더군요.. 껄껄.. 독학중이라서 문제를 풀면서 습득해가는 중입니다.

근데 궁금하네요. 어느 조건 부분에서는 select를 썼고 어느 부분에선 안쓰는게 뭔가 이유가 있는건지

시원하게 해결되길 바랍니다. ㅠㅠ

질문 정리

select를 쓰고 안쓰는 조건식이 있는데.. select를 쓰고 안쓰는 조건이 있는 것입니까?

답변
2018-08-28 10:30:21

안녕하세요.

SQL문을 작성할 때, 선택, 조회를 담당하는 것이 Select 문입니다.

데이터베이스는 SQL문을 기반으로 하고 있기 때문에,
아주 많은 곳에서 쓰입니다.

우리는 액세스 프로그램을 통해 쿼리마법사나 쿼리 디자인에서 쿼리를 만들지만,

실제로는 모두 SQL로 구현하는 것입니다.

시험은 거의 정형화된 형태로 출제되기 때문에, 연습을 통해 적용하는 것을 익히셔야 합니다.

컴퓨터 입장에서 데이터베이스 구현을 할 때, Select 문을 쓸 것인지 아닌지 판단하면 이해하시는데 도움이 될 것 같습니다.

이 문제와 같은 경우,
Select 문을 이용하시면, <학생> 테이블에서 조건에 만족하는 모든 레코드를 선택한다는 의미입니다.

Me.RecordsetClone.FindFirst "조건" 은 현재 폼의 작업 대상이 되는 레코드 셋을 복사한 후 복사된 개체를 대상으로
조건에 만족하는 첫 번째 레코드로 이동하는 코드입니다.

다음 코드에서 복제한 첫번째 레코드를 Bookmark하므로

모든 레코드를 선택하는 Select문을 "조건"으로 넣기는 어렵다고 판단됩니다.


rs.Open은 검색한 레코드를 rs 레코드 셋에 할당하는 것이므로 Select문을 사용해서 검색을 한 것입니다.


좋은 하루 보내세요.

  • *
    2018-08-28 10:30:21

    안녕하세요.

    SQL문을 작성할 때, 선택, 조회를 담당하는 것이 Select 문입니다.

    데이터베이스는 SQL문을 기반으로 하고 있기 때문에,
    아주 많은 곳에서 쓰입니다.

    우리는 액세스 프로그램을 통해 쿼리마법사나 쿼리 디자인에서 쿼리를 만들지만,

    실제로는 모두 SQL로 구현하는 것입니다.

    시험은 거의 정형화된 형태로 출제되기 때문에, 연습을 통해 적용하는 것을 익히셔야 합니다.

    컴퓨터 입장에서 데이터베이스 구현을 할 때, Select 문을 쓸 것인지 아닌지 판단하면 이해하시는데 도움이 될 것 같습니다.

    이 문제와 같은 경우,
    Select 문을 이용하시면, <학생> 테이블에서 조건에 만족하는 모든 레코드를 선택한다는 의미입니다.

    Me.RecordsetClone.FindFirst "조건" 은 현재 폼의 작업 대상이 되는 레코드 셋을 복사한 후 복사된 개체를 대상으로
    조건에 만족하는 첫 번째 레코드로 이동하는 코드입니다.

    다음 코드에서 복제한 첫번째 레코드를 Bookmark하므로

    모든 레코드를 선택하는 Select문을 "조건"으로 넣기는 어렵다고 판단됩니다.


    rs.Open은 검색한 레코드를 rs 레코드 셋에 할당하는 것이므로 Select문을 사용해서 검색을 한 것입니다.


    좋은 하루 보내세요.

· 5MB 이하의 zip, 문서, 이미지 파일만 가능합니다.
· 폭언, 욕설, 비방 등은 관리자에 의해 경고없이 삭제됩니다.