Solved

vs 2010, populate cbo box... error

Posted on 2013-10-24
4
199 Views
Last Modified: 2013-11-07
The attached code has a database to go with it. The combo box is not able to get filled with the necessary information.

Error: A first chance exception of type 'System.Data.SqlClient.SqlException' occurred in System.Data.dll

Question: How can I correct my code to make this work?

I couldn't upload the application, perhaps I could email it to you if you send an email to my user id at hotmail. Or, if you know a way so I can get rid of the objectionable extensions such as .exe, sou. etc so I can upload it here.

Thank you.

Imports System.Data.SqlClient
Imports System.Xml
Public Class frmCustomer
    Dim conWS As New SqlConnection()
    Dim conStr As String = "Data Source=.\SQLEXPRESS;AttachDbFilename=|DataDirectory|\WSCGSoftware.mdf;Integrated Security=True;Connect Timeout=30;User Instance=True"
    Dim selectCommand As SqlCommand
    'Dim selectStatement As String
    Private Sub frmCustomer_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
        conWS.ConnectionString = conStr
        'MessageBox.Show(conWS.ConnectionString)
        'selectStatement = "SELECT CustomerID, FirstName + ' ' + LastName As Costomer FROM tblCustomers ORDER BY Name;"
        'selectCommand.CommandText = selectStatement

        conWS.Open()
        Get_CustomerIDs() 'populate comboBox
        conWS.Close()

    End Sub

    Private Sub Get_CustomerIDs()
        MessageBox.Show(conWS.ConnectionString)
        Dim rdr As SqlDataReader
        Dim cmd As New SqlCommand("SELECT CustomerID, FirstName + ' ' + LastName As Costomer FROM tblCustomers ORDER BY Name;")

        cmd.Connection = conWS
        rdr = cmd.ExecuteReader()

        Dim dt As New DataTable

        dt.Load(rdr)

        rdr.Close()

        Me.cobSelectCust.DataSource = dt
        Me.cobSelectCust.DisplayMember = "Costomer"
        Me.cobSelectCust.ValueMember = "CustomerID"

    End Sub
End Class

Open in new window

0
Comment
Question by:Mike Eghtebas
  • 2
4 Comments
 
LVL 4

Expert Comment

by:ShareD_Point
ID: 39598059
Hi,

You need to check the following

Correctness of your SQL query.
Connection String.

Use try - catch block and get the exact exception by debugging. Here is the updated code.

 Try
            cmd.Connection = conWS
            conWS.Open()
            rdr = cmd.ExecuteReader()

            Dim dt As New DataTable

            dt.Load(rdr)

            rdr.Close()

            Me.cobSelectCust.DataSource = dt
            Me.cobSelectCust.DisplayMember = "Costomer"
            Me.cobSelectCust.ValueMember = "CustomerID"

  Catch ex As SqlException
            MessageBox.Show(ex.Message.ToString)
       
  Catch ex1 As Exception
            MessageBox.Show(ex1.Message.ToString)
   End Try

Hope this Helps
0
 
LVL 21

Expert Comment

by:Craig Wagner
ID: 39598060
What is the actual error message associated with the exception? A SqlException can occur for many reasons.
0
 
LVL 33

Author Comment

by:Mike Eghtebas
ID: 39598174
Thanks for the posts, Using Try/ Catch like:
  Private Sub frmCustomer_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
        Try
            conWS.ConnectionString = conStr
            'MessageBox.Show(conWS.ConnectionString)
            'selectStatement = "SELECT CustomerID, FirstName + ' ' + LastName As Costomer FROM tblCustomers ORDER BY Name;"
            'selectCommand.CommandText = selectStatement

            conWS.Open()
            Get_CustomerIDs() 'populate comboBox
            conWS.Close()
        Catch ex As SqlException
            MessageBox.Show(ex.Message.ToString)

        Catch ex1 As Exception
            MessageBox.Show(ex1.Message.ToString)
        End Try

    End Sub

Open in new window


I get the following messages in the immediate window:

Stepping through the code, when conWS.Open() is highlighted, I get:
Step into: Stepping over non-user code 'System.Data.SqlClient.SqlConnection.ConnectionString.set'

Upon execution of conWS.Open(), it jumps to Catch ex As SqlException telling:
Step into: Stepping over non-user code 'System.Data.SqlClient.SqlConnection.Open'
A first chance exception of type 'System.Data.SqlClient.SqlException' occurred in System.Data.dll

And this is the full description of the message:
An attempt to attach an auto-named database for file C:\Users\Mike\Desktop\Practice\Unit05\WindowsApplication1\WindowsApplication1\bin\Debug\WSCGSoftware.mdf failed. A database with the same name exists, or specified file cannot be opened, or it is located on UNC share.
0
 
LVL 4

Accepted Solution

by:
ShareD_Point earned 500 total points
ID: 39598442
Can you try using the below connection string instead of what you have already.

Dim conStr As String = "Data Source=.\SQLEXPRESS; Integrated Security=SSPI; Initial Catalog= WSCGSoftware;"
0

Featured Post

Master Your Team's Linux and Cloud Stack

Come see why top tech companies like Mailchimp and Media Temple use Linux Academy to build their employee training programs.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Suggested Solutions

In my previous two articles we discussed Binary Serialization (http://www.experts-exchange.com/A_4362.html) and XML Serialization (http://www.experts-exchange.com/A_4425.html). In this article we will try to know more about SOAP (Simple Object Acces…
Wouldn’t it be nice if you could test whether an element is contained in an array by using a Contains method just like the one available on List objects? Wouldn’t it be good if you could write code like this? (CODE) In .NET 3.5, this is possible…
Although Jacob Bernoulli (1654-1705) has been credited as the creator of "Binomial Distribution Table", Gottfried Leibniz (1646-1716) did his dissertation on the subject in 1666; Leibniz you may recall is the co-inventor of "Calculus" and beat Isaac…
The Email Laundry PDF encryption service allows companies to send confidential encrypted  emails to anybody. The PDF document can also contain attachments that are embedded in the encrypted PDF. The password is randomly generated by The Email Laundr…

786 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question