【问题标题】:Vb.net 2010 Connection to SQL Server 2008Vb.net 2010 连接到 SQL Server 2008
【发布时间】:2011-10-28 18:13:26
【问题描述】:

我正在尝试连接到 MS SQL SERVER 2008 数据库(学生),我想确保:

1) 如果我创建的连接字符串正常

Dim connectionString As New SqlConnection("server=X86ONX64; database=students; Integrated Security=True")

2) 我如何检查数据集是否产生任何结果?

代码:

Public Class Form1

'Connection String + DataAdaptor + DataSet
'Declared Outside Any Subroutines/Functions

Dim connectionString As New SqlConnection("server=X86ONX64; database=students; Integrated Security=True")
Dim dataAdaptor As New SqlDataAdapter()
Dim objdataSet As New DataSet()


Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load

    dataAdaptor.SelectCommand = New SqlCommand()
    dataAdaptor.SelectCommand.Connection = connectionString
    dataAdaptor.SelectCommand.CommandText = "select * from basic_info;"
    dataAdaptor.SelectCommand.CommandType = CommandType.Text

    connectionString.Open()

    dataAdaptor.Fill(objdataSet, "StudentInfo")

    connectionString.Close()

    grd.AutoGenerateColumns = True
    grd.DataSource = objdataSet
    grd.DataMember = "basic_info"




    dataAdaptor = Nothing
    connectionString = Nothing


End Sub

【问题讨论】:

    标签: vb.net ado.net dataset connection-string


    【解决方案1】:

    1) 如果我创建的连接字符串正常

    验证连接字符串的简单方法是使用 Visual Studio 中的“服务器资源管理器”进行连接。获得良好连接后,右键单击连接并获取“连接字符串”属性。

    2) 我如何检查数据集是否产生任何结果?

    MsgBox(objdataSet.GetXML)
    

    GetXML 将以 XML 格式返回数据集中的所有数据。

    另外,如果不需要,不要全局声明变量。 像这样声明它们更接近,或者根本不声明......

    Dim objdataSet As New Data.DataSet()
    
    Using connectionString As New Data.SqlClient.SqlConnection("server=X86ONX64; database=students; Integrated Security=True")
    
        With New Data.SqlClient.SqlDataAdapter()
            .SelectCommand = connectionString.CreateCommand
            .SelectCommand.CommandText = "select * from basic_info;"
            .SelectCommand.CommandType = Data.CommandType.Text
    
            .Fill(objdataSet, "StudentInfo")
        End With
    
        MsgBox(objdataSet.GetXML)
    End Using
    
    'Now put it in your dataset...'
    

    希望这会有所帮助。

    【讨论】:

      【解决方案2】:

      关于你的第一个问题, If connection string that i made is OK

      如果您没有遇到任何异常,则说明您已成功连接到数据库。

      关于你的第二个问题。

      您可以做两件事。

      1. 调试错误的方式。 (虽然有效)

        MsgBox(objdataSet.Tables[0].Rows.Count);

      2. 学习和调试正确的方法。

        阅读这些文章

        Debugging Basics
        Visual Studio Debugging
        Debugging Basics: Breakpoints

      无论如何,学习如何正确使用调试器,设置断点,在监视窗口中分析 objdataSet 对象,看看是否有任何结果。

      【讨论】:

      • 谢谢 Ranhiru DataGridView 现在可以通过附加 .Tables(0) 和减号方括号来工作,我正在阅读 Wrox 的Beginning visual basic 2010,这意味着他们的代码中有错误...
      • 对不起!它是 Visual Basic。方括号用于 C# :)
      猜你喜欢
      • 2014-04-15
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-11-22
      • 2012-04-21
      • 1970-01-01
      相关资源
      最近更新 更多