Dump simple sql statement into a listview control in VB

I have a table in MS SQL 2005 and I want  pull a few fields from a table called MLBPlayers and I'm not sure how to write the syntax to dump these values from MS SQL Database to Listview control on a windows form. I got this far and then got stuck.
Imports System
Imports System.Data
Imports System.Data.SqlClient

Public Class Form1
    Shared WithEvents con As SqlConnection

    Shared Sub Main()
        con = New SqlConnection("Persist Security Info=False;User ID=sa;Password=50Cent;Initial Catalog=TSN2;Server=tsnappdev01")

        Dim cmd As New SqlCommand()

        cmd.CommandText = "SELECT FirstName, LastName, Position, Height , Weight FROM MLBPlayers"
        cmd.Connection = con

        Try
            con.Open()
            Dim reader As SqlDataReader = cmd.ExecuteReader()
            Do
                While reader.Read()
                    Console.WriteLine(reader(0))
                End While
            Loop While reader.NextResult()

            reader.Close()
        Finally
            con.Close()
        End Try
    End Sub


End Class

Open in new window


Instead of console.write that's where the add Listview will go with Option Explict and Option Strict on. Thanks EE
powerztomAsked:
Who is Participating?
I wear a lot of hats...

"The solutions and answers provided on Experts Exchange have been extremely helpful to me over the last few years. I wear a lot of hats - Developer, Database Administrator, Help Desk, etc., so I know a lot of things but not a lot about one thing. Experts Exchange gives me answers from people who do know a lot about one thing, in a easy to use platform." -Todd S.

Paul JacksonSoftware EngineerCommented:
try:

ListView1.Items.Add(reader(0).ToString)

Where ListView1 is the name of your ListView control
0
powerztomAuthor Commented:
I tried but the form was never seen don't I have to define columns and then

do something like

ListView1.Items.Add(reader(Firstname).ToString)
ListView1.Items.Add(reader(Lastname).ToString)
ListView1.Items.Add(reader(Position).ToString) ect.

It may be there are too many records in DATABASE TO DISPLAY. I appreciate your help.
0
powerztomAuthor Commented:
Also
The program '[4376] ListviewBaseball.vshost.exe' has exited with code -1073741819 (0xc0000005) 'Access violation'.

Just added some formatting to Listview1

code is

Imports System
Imports System.Data
Imports System.Data.SqlClient

Public Class Form1
    Dim con As SqlConnection

    Public Sub Main()
        con = New SqlConnection("Persist Security Info=False;User ID=sa;Password=DrDre;Initial Catalog=TSN2;Server=tsnappdev01")

        Dim cmd As New SqlCommand()

        cmd.CommandText = "SELECT ID,FirstName, LastName, Position, Height, Weight FROM MLBPlayers"
        cmd.Connection = con

        Try
            con.Open()
            Dim reader As SqlDataReader = cmd.ExecuteReader()
            Do
                While reader.Read()
                    ListView1.Items.Add(reader(0).ToString)
                End While
            Loop While reader.NextResult()

            reader.Close()
        Finally
            con.Close()
        End Try
    End Sub
    Public Sub FormatLVStatus()
        'lvHotfixes.Location = New System.Drawing.Point(13, 54)
        ListView1.Margin = New System.Windows.Forms.Padding(4)
        ListView1.MultiSelect = False
        ListView1.Name = "LVCONNECT1"

        'LVCONNECT.TabIndex = 7
        ListView1.UseCompatibleStateImageBehavior = True
        ListView1.View = System.Windows.Forms.View.Details
        ListView1.Columns.Add("", 125, HorizontalAlignment.Left)
        ListView1.Columns.Add("ID", 100, HorizontalAlignment.Left)
        ListView1.Columns.Add("FirstName", 150, HorizontalAlignment.Left)
        ListView1.Columns.Add("LastName", 150, HorizontalAlignment.Left)
        ListView1.Columns.Add("Position", 150, HorizontalAlignment.Left)
        ListView1.Columns.Add("Height", 350, HorizontalAlignment.Left)
        ListView1.Columns.Add("Weight", 150, HorizontalAlignment.Left)

    End Sub

    Private Sub Form1_Load(sender As Object, e As EventArgs) Handles Me.Load
        FormatLVStatus()
        Main()
    End Sub
End Class

Open in new window

0
Cloud Class® Course: MCSA MCSE Windows Server 2012

This course teaches how to install and configure Windows Server 2012 R2.  It is the first step on your path to becoming a Microsoft Certified Solutions Expert (MCSE).

powerztomAuthor Commented:
I think I have a Database problem access violation. Credentials are correct but not sure what the deal is I even tried a datagridview same access violation.
0
Harish VargheseProject LeaderCommented:
Can you debug and see where you are stuck?
0
powerztomAuthor Commented:
Got it syntax however I have a new problem. I'll close this and reopen new

Imports listviewone


Public Class Form1



    Public Sub FormatLVStatus()
        'lvHotfixes.Location = New System.Drawing.Point(13, 54)
        lvPlayers.Margin = New System.Windows.Forms.Padding(4)
        lvPlayers.MultiSelect = False
        lvPlayers.Name = "LVCONNECT1"

        'LVCONNECT.TabIndex = 7
        lvPlayers.UseCompatibleStateImageBehavior = True
        lvPlayers.View = System.Windows.Forms.View.Details
        lvPlayers.Columns.Add("", 25, HorizontalAlignment.Left)
        lvPlayers.Columns.Add("PlayerID", 100, HorizontalAlignment.Left)
        lvPlayers.Columns.Add("Firstname", 150, HorizontalAlignment.Left)
        lvPlayers.Columns.Add("Lastname", 150, HorizontalAlignment.Left)
        lvPlayers.Columns.Add("Position", 150, HorizontalAlignment.Left)
        lvPlayers.Columns.Add("Height", 150, HorizontalAlignment.Left)
        lvPlayers.Columns.Add("Weight", 150, HorizontalAlignment.Left)

    End Sub
    Private Sub Form1_Load(sender As Object, e As EventArgs) Handles Me.Load
        FormatLVStatus()
    End Sub

    Private Sub ToolStripButton1_Click(sender As Object, e As EventArgs) Handles ToolStripButton1.Click
        Dim playersList As List(Of Players)
        Try
            playersList = Players.GetPlayers
            If playersList.Count > 0 Then
                Dim players As Players
                For i As Integer = 0 To playersList.Count - 1
                    players = playersList(i)
                    lvPlayers.Items.Add(players.playersNumber)
                    lvPlayers.Items(i).SubItems.Add(
                        CInt(players.PlayerID).ToString)
                    lvPlayers.Items(i).SubItems.Add(
                        CStr(players.Firstname))
                    lvPlayers.Items(i).SubItems.Add(
                        CStr(players.Lastname))
                    lvPlayers.Items(i).SubItems.Add(
                        CStr(players.Position))
                    lvPlayers.Items(i).SubItems.Add(
                        CStr(players.Height))
                    lvPlayers.Items(i).SubItems.Add(
                        CStr(players.Weight))
                Next
            Else
                MessageBox.Show("All playerss are paid in full.",
                    "No Balance Due")
                Me.Close()
            End If
        Catch ex As Exception
            MessageBox.Show(ex.Message, ex.GetType.ToString)
            Me.Close()
        End Try
    End Sub
End Class

Open in new window

0

Experts Exchange Solution brought to you by

Your issues matter to us.

Facing a tech roadblock? Get the help and guidance you need from experienced professionals who care. Ask your question anytime, anywhere, with no hassle.

Start your 7-day free trial
powerztomAuthor Commented:
I found some code that appears to work.
0
It's more than this solution.Get answers and train to solve all your tech problems - anytime, anywhere.Try it for free Edge Out The Competitionfor your dream job with proven skills and certifications.Get started today Stand Outas the employee with proven skills.Start learning today for free Move Your Career Forwardwith certification training in the latest technologies.Start your trial today
Visual Basic.NET

From novice to tech pro — start learning today.