I wrote this program that is expected to fetch a detail of a particular individual when inserted in a textfield but it often returns an empty grid.but if I use select all it returns values,don't know why please I need you r help thanks.
Here is the code.
Imports MySql.Data.MySqlClient
Imports System.Data
Public Class Status
Private myConnString As String
Public WriteOnly Property connectionString() As String
Set(ByVal value As String)
myConnString = value
End Set
End Property
Private Sub status_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
dgvstatus.ReadOnly = True
Dim conn As New MySqlConnection
Dim myCommand As New MySqlCommand
Dim myAdapter As New MySqlDataAdapter
Dim myData As New DataTable
Dim SQL As String
SQL = "SELECT * FROM patients WHERE card_number='carddetails'"
conn.ConnectionString = myConnString
Try
conn.Open()
Try
myCommand.Connection = conn
myCommand.CommandText = SQL
myAdapter.SelectCommand = myCommand
myAdapter.Fill(myData)
dgvstatus.DataSource = myData
dgvstatus.AutoSizeRowsMode = DataGridViewAutoSizeRowsMode.AllCells
Catch myerror As MySqlException
MsgBox("There was an error reading from the database: " & myerror.Message)
End Try
Catch myerror As MySqlException
MessageBox.Show("Error connecting to the database: " & myerror.Message)
Finally
If conn.State <> ConnectionState.Closed Then conn.Close()
End Try
End Sub
End Class
The problem is with the SELECT statement don't know what I am doing wrong.
Here is the code.
Imports MySql.Data.MySqlClient
Imports System.Data
Public Class Status
Private myConnString As String
Public WriteOnly Property connectionString() As String
Set(ByVal value As String)
myConnString = value
End Set
End Property
Private Sub status_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
dgvstatus.ReadOnly = True
Dim conn As New MySqlConnection
Dim myCommand As New MySqlCommand
Dim myAdapter As New MySqlDataAdapter
Dim myData As New DataTable
Dim SQL As String
SQL = "SELECT * FROM patients WHERE card_number='carddetails'"
conn.ConnectionString = myConnString
Try
conn.Open()
Try
myCommand.Connection = conn
myCommand.CommandText = SQL
myAdapter.SelectCommand = myCommand
myAdapter.Fill(myData)
dgvstatus.DataSource = myData
dgvstatus.AutoSizeRowsMode = DataGridViewAutoSizeRowsMode.AllCells
Catch myerror As MySqlException
MsgBox("There was an error reading from the database: " & myerror.Message)
End Try
Catch myerror As MySqlException
MessageBox.Show("Error connecting to the database: " & myerror.Message)
Finally
If conn.State <> ConnectionState.Closed Then conn.Close()
End Try
End Sub
End Class
The problem is with the SELECT statement don't know what I am doing wrong.