簡體   English   中英

無法使用VB.net更新SQL Server

[英]Cannot update SQL Server with VB.net

Imports System.Data
Imports System.Data.SqlClient

Public Class Reservation
   Dim sqlConn As SqlConnection

Private Sub Reservation_Load(sender As Object, e As EventArgs) Handles MyBase.Load
    sqlConn = New SqlConnection("Data Source=(LocalDB)\v11.0;AttachDbFilename=|DataDirectory|EasyReserv.mdf;Integrated Security=True")
End Sub

Private Sub btnSubmit_Click(sender As Object, e As EventArgs) Handles btnSubmit.Click
    Dim addSQL As String = "INSERT INTO CUSTOMER (  customerID, name, contactNumber, email ) VALUES (1, 'James', '012444444','james@gmail.com')"
    Dim addCmd As SqlCommand = New SqlCommand(addSQL, sqlConn)
    sqlConn.Open()
    addCmd.ExecuteNonQuery()
    sqlConn.Close()
End Sub

End Class

代碼內沒有錯誤,並且ExecuteNonQuery也返回1,但是我的數據庫中沒有記錄。

這種情況很常見。 您的連接字符串為AttachDbFilename=|DataDirectory|EasyReserv.mdf
這意味着程序使用的MDF文件位於替換字符串| DataDirectory |指向的文件夾中。 這是BIN \\ DEBUG或BIN文件夾,具體取決於您的應用程序是ASP.NET應用程序還是WinForms應用程序。 (請參閱DataDirectory在哪里) 插入可以按預期工作,但是您的MDF文件由服務器資源管理器連接到另一個目錄(通常是項目文件夾)中。 因此,如果使用服務器資源管理器查看數據庫,則看不到添加的記錄。 還要檢查是否將MDF文件的“ Copy To Output Directory ”屬性設置為“ NeverCopy if NewerCopy if Newer ,否則您可能會在Visual Studio中調試時,在應用程序每次重新啟動時失去程序所做的所有更改。

    Try
        If con.State = ConnectionState.Open Then con.Close()
        con.Open()
        global_command = New SqlCommand("UPDATE products_tbl set running_no = '" & txt_running.Text & "' where template_code = 'n'and prod_no = '" & txt_product.Text & "'", con)
        global_command.ExecuteNonQuery()
        global_command.Dispose()

        MsgBox("Successfully updated!", MsgBoxStyle.Information, "Message")
        where = vbNullString

    Catch ex As Exception
        MsgBox("Trace No 4: System Error or Data Error!" + Chr(13) + ex.Message + Chr(13) + "Please Contact Your System Administrator!", vbInformation, "Message")
    End Try


End Sub

關閉SqlConn之前,請嘗試使用SqlDataReader提取插入的客戶。 也許您正在檢查記錄是否插入了錯誤的數據庫中。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM