未设置为实例或对象的实例对象。 Visual Basic

问题描述:

我正在写一个简单的部分将5个值插入到本地数据库中。连接建立得很好,但是当我按下按钮时,插入到数据库中的作业会得到“实例对象未设置为实例或对象”此消息。未设置为实例或对象的实例对象。 Visual Basic

版本的SQL 的Microsoft SQL Server 2014 - 12.0.2000.8(X64)

这里是我的代码

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

Public Class Form1 
Dim ID As Integer = 0 

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

    Dim SQLCon As New SqlConnection With {.ConnectionString = "Server=DIONISIS-PC\SQLEXPRESS; Database=Testing;Trusted_Connection=True;" 
             } 
    Dim SQLcmd As SqlCommand 
    Try 
     SQLCon.Open() 
     Label2.Text = "Connected" 


    Catch ex As Exception 
     Label2.Text = "ERROR" 
     MsgBox(ex.Message) 

    Finally 
     SQLCon.Close() 

    End Try 

End Sub 

Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click 
    Dim SQLCon As New SqlConnection With {.ConnectionString = "Server=DIONISIS-PC\SQLEXPRESS; Database=Testing;Trusted_Connection=True;" 
             } 
    Dim SQLcmd As SqlCommand 
    ID += 1 
    Dim LastName As String = TextBox1.Text 
    Dim firstName As String = TextBox2.Text 
    Dim Address As String = TextBox3.Text 
    Dim city As String = TextBox4.Text 
    Try 
     SQLCon.Open() 
     SQLcmd.Connection = SQLCon 'EDIT: The problem seems to be here' 
     SQLcmd.CommandText = "INSERT INTO students([student_ID], [LastName],[FirstName],[Address],[City]) VALUES([ID], [LastName],[firstName],[Address],[city])" 
     SQLcmd.ExecuteNonQuery() 



    Catch ex As Exception 

     MsgBox(ex.Message) 

    Finally 
     SQLCon.Close() 

    End Try 

End Sub 
End Class 
+0

'VALUES([ID],[姓氏],[名字],[地址],[城市])' – Devart

+0

@Devart检查上面感谢 – Dionisis

+0

编辑'SQLcmd'尚未实例 – Jamiec

您需要在尝试设置属性之前实例化SQLcmd

这应该为你工作:

SQLcmd.CommandText = ("INSERT INTO students([student_ID], [LastName],  
[FirstName],[Address],[City]) VALUES({1},'{2}','{3}','{4}','{5}'"),LastName  
,firstName,Address,city) 

你将会倾向于SQL注入。正确的方法是here,它的名称是通过使用SQL参数

+0

以及它没有工作......似乎这条线有问题。 SQLcmd.Connection = SQLCon – Dionisis