본문 바로가기

Languages/Visual Basic

VB - 고급 데이터 베이스 작성하기 [2]



ADO 개체를 사용하여 데이터 조작하기


▣레코드를 이동하려면 먼저 recordset 개체의 메소드를 이용합니다.

  • 레코드 이동에 사용되는 메소드 
    MoveFirst처음 레코드로 이동 
    MoveLast마지막 레코드로 이동 
    MoveNext다음 레코드로 이동 
    MovePrevious이전 레코드로 이동 
    BOF파일의 첫 부분 
    EOF파일의 끝 부분

▣EOF 사용하기





따라하기 - P381 ~











▣소스

Private cn As ADODB.Connection

Private rs As ADODB.Recordset

Private Sub Command1_Click() '처음

rs.MoveFirst

Text1.Text = rs.Fields("Name")

Text2.Text = rs.Fields("Tel")

End Sub

Private Sub Command2_Click() '이전

rs.MovePrevious

If rs.BOF Then

MsgBox "첫 레코드 입니다. 이동할 수 없습니다"

rs.MoveFirst

End If

Text1.Text = rs.Fields("Name")

Text2.Text = rs.Fields("Tel")

End Sub

Private Sub Command3_Click() '다음

rs.MoveNext

If rs.EOF Then

MsgBox "마지막 레코드 입니다. 이동할 수 없습니다"

rs.MoveLast

Exit Sub

End If

Text1.Text = rs.Fields("Name")

Text2.Text = rs.Fields("Tel")

End Sub

Private Sub Command4_Click() '마지막

rs.MoveLast

Text1.Text = rs.Fields("Name")

Text2.Text = rs.Fields("Tel")

End Sub

Private Sub Command5_Click() '추가

Text1.Locked = False

Text2.Locked = False

Text1.Text = ""

Text2.Text = ""

Text1.SetFocus

End Sub

Private Sub Command6_Click() ' 갱신(저장)

If Text1.Text = "" Or Text2.Text = "" Then

MsgBox "데이터를 입력해주세요"

If Text1.Text = "" Then

Text1.SetFocus

Else

Text2.SetFocus

End If

End If

rs.AddNew

rs.Fields(0) = Text1.Text

rs.Fields(1) = Text2.Text

rs.Update

MsgBox "데이터가 추가 되었습니다"

End Sub

Private Sub Command7_Click() '종료

Unload Me

End Sub

Private Sub Form_Load() '폼이 로드될 때

On Error GoTo Err

Set cn = New ADODB.Connection

cn.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=F:\★강의자료모음\3학년 1학기-DP-A\DB응용개발도구\VBDB\PhoneBookI.mdb;Persist Security Info=False"

cn.Open

Set rs = New ADODB.Recordset

rs.Open "Person", cn, adOpenDynamic

Text1.Text = rs.Fields("Name")

Text2.Text = rs.Fields("Tel")

Exit Sub

Err:

MsgBox (Err.Number & Chr(13) & Err.Description)

End

End Sub

Private Sub Form_Unload(Cancel As Integer)

rs.Close

cn.Close

Set rs = Nothing

Set cn = Nothing

End Sub