vb.net – 在VB中从SQL检索数据(第2部分)

前端之家收集整理的这篇文章主要介绍了vb.net – 在VB中从SQL检索数据(第2部分)前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我试图通过sql数据库中检索数据来填充列表框.我之前已经问过这个问题,但我使用的是不同的配置,而我现在使用的配置并没有给出任何结果.

retrieving data in VB from SQL

那是我的老帖子.我现在将为我的尝试的新版本提供代码.

  1. Imports System.Data.sql
  2. Imports System.Data.sqlClient
  3.  
  4.  
  5. Public Class Form1
  6.  
  7. Private Sub Form1_Load(sender As Object,e As EventArgs) Handles MyBase.Load
  8. Dim conn As New sqlConnection
  9. conn.Open()
  10. Dim comm As New sqlCommand("SELECT name FROM Table_1",conn)
  11. Dim reader As sqlDataReader = comm.ExecuteReader
  12. Dim dt As New DataTable
  13. dt.Load(reader)
  14. ListBox1.Items.Add(dt)
  15.  
  16.  
  17. End Sub
  18. End Class

如果有人愿意帮助我,我会非常感激.如果可能的话,在试图启发我时使用实用的方法,因为这是最好的.

编辑1

  1. Imports System.Data.sql
  2. Imports System.Data.sqlClient
  3.  
  4.  
  5. Public Class Form1
  6.  
  7. Private Sub Form1_Load(sender As Object,e As EventArgs) Handles MyBase.Load
  8. Dim connString As String = "Data Source=THE_SHOGUNATE\sqlEXPRESS;Initial Catalog=le_database;Integrated Security=True"
  9. Dim conn As New sqlConnection(connString)
  10. conn.Open()
  11. Dim comm As New sqlCommand("SELECT name FROM Table_1",conn)
  12. Dim reader As sqlDataReader = comm.ExecuteReader
  13. Dim dt As New DataTable
  14. dt.Load(reader)
  15. ListBox1.DataSource = dt
  16.  
  17.  
  18. End Sub
  19. End Class

使用此代码,列表框将填充6个“System.Data.DataRowView”字符串实例,其中6个是我表中的项目数.我如何获得实际值?

解决方法

你错过了connectionString

如果要从DB填充列表,有很多方法

使用DataReader

  1. Imports System.Data.sql
  2. Imports System.Data.sqlClient
  3.  
  4.  
  5. Public Class Form1
  6.  
  7. Private Sub Form1_Load(sender As Object,e As EventArgs) Handles MyBase.Load
  8. Dim connectionString As String = "Data Sourec=localhost;........."
  9. Dim conn As New sqlConnection(connectionString)
  10. conn.Open()
  11. Dim comm As New sqlCommand("SELECT name FROM Table_1",conn)
  12. Dim reader As sqlDataReader = comm.ExecuteReader
  13. /* As it is not working i commented this
  14. listBox1.ItemsSource = dt; // use this instead of ListBox1.Items.Add(dt)
  15. //because Add event add only one item in the list.
  16. */
  17. Dim i As Integer
  18. i=0
  19. while reader.read()
  20. listBox1.Items.Add(dr(i).ToString);
  21. i++
  22. End While
  23.  
  24. End Sub
  25. End Class

使用DataTable

  1. Imports System.Data.sql
  2. Imports System.Data.sqlClient
  3.  
  4.  
  5. Public Class Form1
  6.  
  7. Private Sub Form1_Load(sender As Object,e As EventArgs) Handles MyBase.Load
  8. Dim connectionString As String = "Data Sourec=localhost;........."
  9. Dim conn As New sqlConnection(connectionString)
  10. conn.Open()
  11. // Create new DataAdapter
  12. sqlDataAdapter a = new sqlDataAdapter("SELECT * FROM EmployeeIDs",c)
  13. // Use DataAdapter to fill DataTable
  14. DataTable dt = new DataTable();
  15. a.Fill(dt);
  16. ListBox1.DataSource = dt;
  17. ListBox1.DataTextField = "name";
  18.  
  19.  
  20.  
  21. End Sub
  22. End Class

编辑:
连接字符串的其他参数取决于您的安全性以及所有这些.你必须看到这个链接Connection strings for SQL Server 2008

猜你在找的VB相关文章