• We just launched and are currently in beta. Join us as we build and grow the community.

Data entry and Autocomplete with Multiple Columns

sami.offline

Membership Platform Specialist
S Rep
0
0
0
Rep
0
S Vouches
0
0
0
Vouches
0
Posts
120
Likes
200
Bits
2 MONTHS
2 2 MONTHS OF SERVICE
LEVEL 1 200 XP
In this tutorial I will show you how to save and autocomplete a textbox with multiple columns in Visual Basic 2008 and MS Access Database. As I expand my knowledge about autocomplete I discovered that you can put multiple columns/fields on it. So, it depends on you or your query, on how many columns/fields you want to exist.

Let's begin:

1.Open Visual Basic 2008, create a project and do the Form just like this.

s.jpg


2.Double click the Form and do the following codes above the Form_Load

.


  1. 'DECLARE A STRING VARIABLE TO PUT YOUR QUERY ON IT
  2. Dim

    query As

    String
  3. 'DECLARING A VARIABLE AS OLEBDCONNECTION TO REPRESENT AN OPEN CONNECTION TO THE DATA SOURCE
  4. 'IN THIS AREA, YOUR GOING TO PUT A CONNECTION STRING THAT REPRESENTS A PROVIDER AND A DATA SOURCE.
  5. Dim

    con As

    OleDb.

    OleDbConnection

    =

    New

    OleDb.

    OleDbConnection

    (

    "Provider=Microsoft.ACE.OLEDB.12.0;Data Source="

    _
  6. &

    Application.

    StartupPath

    &

    "\people.accdb;"

    )

3.In the Form_Load

, do this code for the autocomplete of a Textbox.


  1. Private

    Sub

    Form1_Load(

    ByVal

    sender As

    System.

    Object

    , ByVal

    e As

    System.

    EventArgs

    )

    Handles

    MyBase

    .

    Load

  2. Try
  3. 'OPENING THE CONNECTION
  4. con.

    Open

    (

    )
  5. 'PUTING THE VALUE ON A VARIABLE THAT YOU HAVE BEEN DECLARE ON THE TOP
  6. query =

    "SELECT * FROM tblpeople"
  7. 'DECLARING A VARIABLE AS OLEDBDATAADAPTER
  8. 'TO REPRESENTS A SET OF DATA COMMANDS AND A DATABASE CONNECTION
  9. 'THAT ARE USED TO FILL THE DATASET/DATATABLE AND UPDATE THE DATA SOURCE
  10. 'PUT HERE YOUR COMMAND TEXT AND A CONNECTION STRING
  11. Dim

    da As

    OleDb.

    OleDbDataAdapter

    =

    New

    OleDb.

    OleDbDataAdapter

    (

    query, con)
  12. 'DECLARING A VARIABLE AS DATATABLE
  13. 'REPRESENT ONE TABLE IN THE DATABASE
  14. Dim

    dt As

    New

    DataTable
  15. 'FILLING THE DATATABLE
  16. da.

    Fill

    (

    dt)
  17. 'DECLARING A VARIABLE AS DATAROW
  18. 'REPRESENTS A ROW OF DATA IN THE DATATABLE
  19. Dim

    r As

    DataRow
  20. 'CLEARING THE DATA IN THE CUSTOM SOURCE OF A TEXTBOX
  21. txtsearch.

    AutoCompleteCustomSource

    .

    Clear

    (

    )
  22. 'DECLARING A VARIABLE AS INTEGER AND STORE THE MAX COLUMN OF THE DATATABLE
  23. Dim

    maxcolumn As

    Integer

    =

    dt.

    Columns

    .

    Count

    -

    1

  24. For

    Each

    r In

    dt.

    Rows
  25. For

    i As

    Integer

    =

    0

    To

    maxcolumn
  26. 'ADDING THE DATA OF THE DATATABLE IN THE CUSTOM SOURCE OF A TEXTBOX
  27. txtsearch.

    AutoCompleteCustomSource

    .

    Add

    (

    r.

    Item

    (

    i)

    .

    ToString

    )
  28. Next

    i
  29. Next

    r
  30. Catch

    ex As

    Exception
  31. MsgBox

    (

    ex.

    Message

    )
  32. End

    Try
  33. 'CLOSING A CONNECTION
  34. con.

    Close

    (

    )
  35. End

    Sub


4.Go back to the Design Views, double click the Save Button and do the following code for inserting the data in the Database.

  1. Private

    Sub

    btnsave_Click(

    ByVal

    sender As

    System.

    Object

    , ByVal

    e As

    System.

    EventArgs

    )

    Handles

    btnsave.

    Click

  2. Try
  3. 'OPENING A CONNECTION
  4. con.

    Open

    (

    )
  5. 'PUTTING THE VALUE ON A VARIABLE THAT YOU HAVE BEEN DECLARE ON THE TOP
  6. query =

    "INSERT INTO tblpeople (FIRSTNAME,LASTNAME,ADDRESS) "

    _
  7. &

    "VALUES ('"

    &

    txtfname.

    Text

    &

    "','"

    &

    txtlname.

    Text

    &

    "','"

    &

    txtaddress.

    Text

    &

    "')"
  8. 'DECLARING A VARIABLE AS OLEDBDATAADAPTER
  9. 'TO REPRESENTS A SET OF DATA COMMANDS AND A DATABASE CONNECTION
  10. 'THAT ARE USED TO FILL THE DATASET/DATATABLE AND UPDATE THE DATA SOURCE
  11. 'PUT HERE YOUR COMMAND TEXT AND A CONNECTION STRING
  12. Dim

    da As

    OleDb.

    OleDbDataAdapter

    =

    New

    OleDb.

    OleDbDataAdapter

    (

    query, con)
  13. 'DECLARING A VARIABLE AS DATATABLE
  14. 'REPRESENT ONE TABLE IN THE DATABASE
  15. Dim

    dt As

    New

    DataTable
  16. 'FILLING THE DATATABLE
  17. da.

    Fill

    (

    dt)

  18. MsgBox

    (

    "Data has been save"

    , MsgBoxStyle.

    SystemModal

    , "Save"

    )
  19. Catch

    ex As

    Exception
  20. MsgBox

    (

    ex.

    Message

    )
  21. End

    Try
  22. 'CLOSING A CONNECTION
  23. con.

    Close

    (

    )
  24. 'CALLING THE FIRST LOAD TO REFRESH THE DATA IN THE CUSTOM SOURCE OF A TEXTBOX
  25. Call

    Form1_Load(

    sender, e)
  26. End

    Sub

Reminder: you cannot autocomplete a Textbox without doing this, on its properties.

f.png


You can download the complete source code.


Download
You must upgrade your account or reply in the thread to view the hidden content.
 

452,496

335,022

335,030

Top