"The ConnectionString property has not been initialized" error in VB.NET

40,171

Solution 1

You never assigned your connection string to the connection object, just like the error is saying.

Insert a line setting the connection string before con.open.

Con.connectionstring = connection
Con.Open()

Or better yet, change your using statement as follows

Dim Connection As String = "Data Source=.\SQLEXPRESS;AttachDbFilename=G:\VB Project\Library Catalog System\Library Catalog System\library.mdf;Integrated
Security=True;Connect Timeout=30;User Instance=True"

Using Con As New SqlConnection(connection)

Solution 2

You are creating the connection string object but never assigning it to your SqlCommand object.

Share:
40,171
CompleteNewb
Author by

CompleteNewb

Updated on July 09, 2022

Comments

  • CompleteNewb
    CompleteNewb almost 2 years

    Every time I tried to connect to the database it give me this error "The ConnectionString property has not been initialized"

    what can I do to solve this?

    here are my codes

    Module Module1
        Function GetInfoForStudent(ByRef QueryName As String, ByVal UserName As String, ByVal Password As String) As DataTable
            Using Con As New SqlConnection
                Try
                    Using OleCon As New SqlConnection
                        Dim Connection As String = "Data Source=.\SQLEXPRESS;AttachDbFilename=G:\VB Project\Library
    Catalog System\Library Catalog System\library.mdf;Integrated
    Security=True;Connect Timeout=30;User Instance=True"
                        Con.Open()
                        Dim Cmd As SqlCommand = Con.CreateCommand()
                        Cmd.CommandType = CommandType.StoredProcedure
                        Cmd.CommandText = QueryName
                        Cmd.Parameters.AddWithValue("@user", UserName)
                        Cmd.Parameters.AddWithValue("@pass", Password)
                        Dim da As New SqlDataAdapter(Cmd)
                        Dim ds As New DataTable()
                        da.Fill(ds)
                        Return ds
                    End Using
                Catch ex As Exception
    
                    Throw New Exception(ex.Message)
                End Try
            End Using
    
        End Function
    
    End Module
    
    Sub ShowStudentInfo()
        Dim dt As DataTable = GetInfoForStudent("MyStoredProcName", "@user", "@pass")
        ' Since (presumably) only one is returned
        With dt.Rows(0)
            ' Assign your text boxes 
            StudentIDTextBox.Text = .Item("StudentID")
            LoginIDTextBox.Text = .Item("LoginID")
            Student_NameTextBox.Text = .Item("Student Name")
            Student_addressTextBox.Text = .Item("Student address")
    
        End With
    End Sub