VB.NET声明错误

时间:2014-01-03 21:26:18

标签: sql arrays vb.net variables

我在某些Visual Basic代码中遇到了一些问题虽然我已经声明了一个变量,但当我尝试给它一个值时,Visual Studio会返回一个错误,说明该变量尚未声明。这是代码块:

Private Sub chkbox_ta_CheckedChanged(sender As Object, e As EventArgs) Handles chkbox_ta.CheckedChanged
    Dim query As String = "SELECT * FROM [Hiragana List] WHERE Pronunciation='Ta';"
    Dim instruction As SqlCommand (query, connection)
    Dim da As New SqlDataAdapter
    da.SelectCommand = instruction
    da.Fill(HiraganaList)
End Sub

'instruction'变量引发了错误,Visual Studio没有提供任何解决方案。除此之外,指令变量中的查询参数返回错误'数组边界不能出现在类型说明符中'。我仍然习惯于在VB中使用SQL,任何能够教会我如何避免这些错误的解释都会非常有用。

2 个答案:

答案 0 :(得分:3)

SqlCommand声明和初始化中的语法错误 正确的语法是以下之一:

Dim instruction As SqlCommand = new SqlCommand(query, connection)

Dim instruction As New SqlCommand (query, connection)

或只是

Dim instruction = new SqlCommand(query, connection)

Dim Statement有许多变化应该仔细研究(特别是在语言的早期阶段)

答案 1 :(得分:1)

数据类型(字符串,整数,日期)不需要“新”声明。 但是当你定义一个类的东西(比如SqlCommand或你自己创建的那个)时,它需要用“new”初始化。

史蒂夫早期帖子中的语法示例

Dim instruction As SqlCommand = new SqlCommand(query, connection)
Dim instruction As New SqlCommand (query, connection)
Dim instruction = new SqlCommand(query, connection)

一些可能有用的链接:

http://msdn.microsoft.com/en-us/library/47zceaw7.aspx

http://msdn.microsoft.com/en-us/library/system.data.sqlclient.sqlcommand%28v=vs.110%29.aspx