Data Access
Read field from Database
Section titled “Read field from Database”Public Function GetUserFirstName(UserName As String) As String Dim Firstname As String = ""
'Specify the SQL that you want to use including a Parameter Dim SQL As String = "select firstname from users where username=@UserName"
'Provide a Data Source Dim DBDSN As String = "Data Source=server.address;Initial Catalog=DatabaseName;Persist Security Info=True;User ID=UserName;Password=UserPassword"
Dim dbConn As New SqlConnection(DBDSN)
Dim dbCommand As New SqlCommand(SQL, dbConn)
'Provide one or more Parameters dbCommand.Parameters.AddWithValue("@UserName", UserName)
'An optional Timeout dbCommand.CommandTimeout = 600
Dim reader As SqlDataReader Dim previousConnectionState As ConnectionState = dbConn.State Try If dbConn.State = ConnectionState.Closed Then dbConn.Open() End If reader = dbCommand.ExecuteReader Using reader With reader If .HasRows Then 'Read the 1st Record reader.Read() 'Read required field/s Firstname = .Item("FirstName").ToString End If
End With
End Using
Catch 'Handle the error here Finally If previousConnectionState = ConnectionState.Closed Then dbConn.Close() End If dbConn.Dispose() dbCommand.Dispose()
End Try 'Pass the data back from the function Return Firstname
End FunctionUsing the above function is simply:
Dim UserFirstName as string=GetUserFirstName(UserName)Simple Function to read from Database and return as DataTable
Section titled “Simple Function to read from Database and return as DataTable”This simple function will execute the specified Select SQL command and return the result as data set.
Public Function ReadFromDatabase(ByVal DBConnectionString As String, ByVal SQL As String) As DataTable Dim dtReturn As New DataTable Try 'Open the connection using the connection string Using conn As New SqlClient.SqlConnection(DBConnectionString) conn.Open()
Using cmd As New SqlClient.SqlCommand() cmd.Connection = conn cmd.CommandText = SQL Dim da As New SqlClient.SqlDataAdapter(cmd) da.Fill(dtReturn) End Using End Using Catch ex As Exception 'Handle the exception End Try
'Return the result data set Return dtReturnEnd FunctionNow you can execute the above function from below codes
Private Sub MainFunction() Dim dtCustomers As New DataTable Dim dtEmployees As New DataTable Dim dtSuppliers As New DataTable
dtCustomers = ReadFromDatabase("Server=MYDEVPC\SQLEXPRESS;Database=MyDatabase;User Id=sa;Password=pwd22;", "Select * from [Customers]") dtEmployees = ReadFromDatabase("Server=MYDEVPC\SQLEXPRESS;Database=MyDatabase;User Id=sa;Password=pwd22;", "Select * from [Employees]") dtSuppliers = ReadFromDatabase("Server=MYDEVPC\SQLEXPRESS;Database=MyDatabase;User Id=sa;Password=pwd22;", "Select * from [Suppliers]")
End SubThe above example expects that your SQL Express instance “SQLEXPRESS” is currently installed on “MYDEVPC” and your database “MyDatabase” contains “Customers”, “Suppliers” and “Employees” tables and the “sa” user password is “pwd22”. Please change these values as per your setup to get the desired results.
Get Scalar Data
Section titled “Get Scalar Data”This simple function can be used to get value from exactly one field one record query result
Public Function getDataScalar(ssql As String) openConnection()
Try Dim q As New MySqlCommand
q.Connection = db q.CommandText = ssql getDataScalar = q.ExecuteScalar
Catch ex As Exception 'Exception End TryEnd FunctionHow to use it:
Dim userid as String = getDataScalar("select username from user where userid=99")Variable ‘username’ would be filled with the value of field username as a result from that query.