งานนำเสนอกำลังจะดาวน์โหลด โปรดรอ

งานนำเสนอกำลังจะดาวน์โหลด โปรดรอ

การค้นหาข้อมูลในฐานข้อมูล VB.NET & ADO.NET

งานนำเสนอที่คล้ายกัน


งานนำเสนอเรื่อง: "การค้นหาข้อมูลในฐานข้อมูล VB.NET & ADO.NET"— ใบสำเนางานนำเสนอ:

1 การค้นหาข้อมูลในฐานข้อมูล VB.NET & ADO.NET
เอกสารสำหรับ การเรียนใน สัปดาห์ที่ 8 การค้นหาข้อมูลในฐานข้อมูล VB.NET & ADO.NET โดย อ. นัฐพงศ์ ส่งเนียม

2 หน้าจอข้อมูลพนักงาน

3 การค้นหาข้อมูลในฐานข้อมูล
โดยทั่วไป การค้นหาข้อมูลนั้นสามารถทำได้ 2 วิธีใหญ่ คือ การค้นหาโดยแบบลำดับ (sequential) การค้นหาโดยใช้ คำสั่ง SQL

4 การค้นหาแบบ sequential
เป็นการค้นหาจาก DataSet โดยการค้นเรียงไปตั้งแต่แถวแรก

5 เขียนโค้ดสำหรับ เรียก Namespace System.Data เข้ามาใช้งาน

6 กำหนดตัวแปรเริ่มต้น ไว้ใต้บรรทัด Windows Form Designer generated code
Dim CN As OleDbConnection Dim DA As OleDbDataAdapter Dim DS As New DataSet Dim i As Int16 = 0 Dim status As String

7 สร้างโปรแกรมย่อยในการเชื่อมต่อกับฐานข้อมูล
Public Sub OpenDB() Try CN = New OleDbConnection("Provider=Microsoft.Jet.OLEDB.4.0; Data Source=c:\Payroll2007\Payroll2007.MDB") Dim SQL As String CN.Open() SQL = "Select * From TblEmployee" DA = New OleDbDataAdapter(SQL, CN) DA.Fill(DS, "TblEmployee") Catch ex As Exception MsgBox(ex.Message) End Try End Sub

8 สร้างโปรแกรมย่อยในการเชื่อมต่อกับฐานข้อมูล
Public Sub OpenDB() Try CN = New OleDbConnection("Provider=Microsoft.Jet.OLEDB.4.0; Data Source=c:\Payroll2007\Payroll2007.MDB") Dim SQL As String CN.Open() SQL = "Select * From TblEmployee WHERE ID=‘003’" DA = New OleDbDataAdapter(SQL, CN) DA.Fill(DS, "TblEmployee") Catch ex As Exception MsgBox(ex.Message) End Try End Sub

9 สร้างโปรแกรมย่อยในการเชื่อมต่อกับฐานข้อมูล
Public Sub OpenDB() Try CN = New OleDbConnection("Provider=Microsoft.Jet.OLEDB.4.0; Data Source=c:\Payroll2007\Payroll2007.MDB") Dim SQL As String CN.Open() SQL = "Select * From TblEmployee WHERE FNAME=‘PETER’" DA = New OleDbDataAdapter(SQL, CN) DA.Fill(DS, "TblEmployee") Catch ex As Exception MsgBox(ex.Message) End Try End Sub

10 สร้างโปรแกรมย่อยในการเชื่อมต่อกับฐานข้อมูล
Public Sub OpenDB() Try CN = New OleDbConnection("Provider=Microsoft.Jet.OLEDB.4.0; Data Source=c:\Payroll2007\Payroll2007.MDB") Dim SQL As String CN.Open() SQL = "Select * From TblEmployee WHERE FNAME= ‘" & TxtSearch.Text & “’” DA = New OleDbDataAdapter(SQL, CN) DA.Fill(DS, "TblEmployee") Catch ex As Exception MsgBox(ex.Message) End Try End Sub

11 สร้างโปรแกรมย่อยในการแสดงข้อมูลจากฐานข้อมูล
Public Sub showData() Dim Gender As String Try TxtID.Text = DS.Tables("TblEmployee").Rows(i)("EmpID") TxtName.Text = DS.Tables(0).Rows(i)("FName") TxtLName.Text = DS.Tables("TblEmployee").Rows(i)("LName") Gender = DS.Tables("TblEmployee").Rows(i)("Gender") If Gender = "M" Then CmbGender.Text = "ชาย" Else CmbGender.Text = "หญิง" End If DTBOD.Value = DS.Tables("TblEmployee").Rows(i)("BOD") DTStartDate.Value = DS.Tables("TblEmployee").Rows(i)("StartDate") TxtAddress.Text = DS.Tables("TblEmployee").Rows(i)("Address") TxtMobile.Text = DS.Tables("TblEmployee").Rows(i)("Mobile") Catch ex As Exception MsgBox(ex.Message) End Try End Sub

12 โค้ดตอนฟอร์มโหลด Private Sub FrmTest01_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load OpenDB() showData() BtnSave.Enabled = False LockControls(True) End Sub

13 โค้ดในปุ่ม ค้นหา Search
Private Sub BtnSearch_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles BtnGO.Click Dim Found as Boolean Dim keysearch As String Found = False keysearch = TxtSearch.Text For k As Int16 = 0 To DS.Tables(0).Rows.Count - 1 If ucase(keysearch) = ucase(DS.Tables(0).Rows(k)("empid")) Then i = k showData() Found = True Exit For Else End If Next k If Found Then Msgbox(“ไม่พบข้อมูลที่คุณต้องการค้นหา”) End IF End Sub

14 การออกแบบหน้าจอ Login
FrmLogin.vb การออกแบบหน้าจอ Login การออกแบบหน้าจอล็อกอินมีรายละเอียดดังนี้ LbUserName LbPassword TxtUserName TxtPassword BtnLogin BtnCanCel BtnExit

15 กำหนดคุณสมบัติของ ฟอร์ม FrmLogin
Name : FrmLogin Formborderstyle : Fixeddialog MaximizeBox : False Backcolor : เลือกสีที่ต้องการ StartPosition : CenterScrenn Text : ล็อกอินเข้าสู่ระบบ HR

16 สร้างตาราง TblMember ใน MS-AccessXP
id :: Autonumber >>Primary Key PK username :: เป็น Text ขนาด 16 password :: เป็น Text ขนาด 16 fullname :: เป็น Text ขนาด 50 type :: เป็น number ขนาด byte ::admin 1::user 2::Guest e_mail :: เป็น Text ขนาด 50

17 ป้อนข้อมูลลงในตาราง TblMember

18 เขียนคำสั่งเพื่ออ้างอิงถึง Namespace สำหรับติดต่อฐานข้อมูล ดังนี้
Imports System.Data Imports System.Data.OleDb โดยให้ประกาศไว้ในบรรทัดแรกสุดของ source code

19 ต.ย.

20 ประกาศตัวแปรที่จำเป็นสำหรับการเชื่อมต่อฐานข้อมูล
Dim CN As OleDbConnection Dim DA As OleDbDataAdapter Dim DS As New DataSet Dim F1 As New FrmTest01 โดยให้ประกาศไว้ในส่วนของ Global scope ในหน้าต่าง source code

21 Private Sub BtnLogin_Click(ByVal sender As System
Private Sub BtnLogin_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles BtnLogin.Click Try Dim un As String = TxtUserName.Text Dim pwd As String = TxtPassword.Text CN = New OleDbConnection("Provider=Microsoft.Jet.OLEDB.4.0; Data Source=c:\Payroll2007\Payroll2007.MDB") Dim SQL As String CN.Open() SQL = "Select * From TblMember Where UserName='" & un & "' and Password='" & pwd & "'" DA = New OleDbDataAdapter(SQL, CN) DA.Fill(DS, "TblMember") Dim rowcnt As Int16 rowcnt = DS.Tables(0).Rows.Count If rowcnt >= 1 Then F1.Show() Me.Hide() Else MsgBox("ไม่สามารถเข้าระบบได้ เนื่องจาก ชื่อผู้ใช้งานหรือ รหัสผ่านไม่ถูกต้อง") TxtUserName.Clear() TxtPassword.Clear() TxtUserName.Focus() End If Catch ex As Exception MsgBox(ex.Message) End Try End Sub โค้ดในปุ่ม Login

22 โค้ดในปุ่ม Cancel Private Sub BtnCancel_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles BtnCancel.Click TxtUserName.Clear() TxtPassword.Clear() TxtUserName.Focus() End Sub

23 โค้ดในปุ่ม Exit Private Sub BtnExit_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles BtnExit.Click End End Sub

24 โค้ดตอน กด แป้น Enter บนคีย์บอร์ด ขณะอยู่ในช่อง Txtpassword
Private Sub TxtPassword_KeyPress(ByVal sender As Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles TxtPassword.KeyPress If e.KeyChar = Chr(13) Then BtnLogin_Click(sender, e) Else End If End Sub กดแป้น Enter บนคีย์บอร์ด ก็ทำการ Login อัตโนมัติ แทนการ คลิกที่ปุ่ม Login


ดาวน์โหลด ppt การค้นหาข้อมูลในฐานข้อมูล VB.NET & ADO.NET

งานนำเสนอที่คล้ายกัน


Ads by Google