2016-10-16 29 views
1

我一直在嘗試在Visual Studio中創建註冊頁面,我似乎無法使其工作。應用程序頁面將數據插入到Visual Studio中的本地SQL Server數據庫中

  • 數據庫名稱=用戶
  • 其數據將被插入到=用戶名&密碼列

當我執行的代碼,它返回消息「數據保存」,這將導致我相信它已經工作,但是當我看看錶數據,一切都沒有改變..

Public Class SignUp 
Dim mysqlConn As Data.SqlClient.SqlConnection 
Dim command As Data.SqlClient.SqlCommand 

Private Sub Button1_Click(ByVal sender As Object, ByVal e As EventArgs) Handles Button1.Click 
    mysqlConn = New Data.SqlClient.SqlConnection 
    mysqlConn.ConnectionString = ("Data Source=(LocalDB)\MSSQLLocalDB;AttachDbFilename=|DataDirectory|\NewFolder1\Members.mdf;Integrated Security=True") 
    Dim RowsAffected As Integer 
    Try 
     mysqlConn.Open() 
     Dim query As String = "INSERT INTO [User] (username, password) VALUES (@Username, @Password)" 
     command = New SqlClient.SqlCommand(query, mysqlConn) 
     Dim paramUsername As New SqlClient.SqlParameter() With {.ParameterName = "@Username", .Value = TextBox1.Text, .Size = 50, .SqlDbType = SqlDbType.VarChar} 
     Dim paramPassword As New SqlClient.SqlParameter() With {.ParameterName = "@Password", .Value = TextBox2.Text, .Size = 50, .SqlDbType = SqlDbType.VarChar} 

     command.Parameters.Add(paramUsername) 
     command.Parameters.Add(paramPassword) 

     RowsAffected = command.ExecuteNonQuery 

     mysqlConn.Close() 

     If 0 < RowsAffected 
      Then MessageBox.Show("Data Saved") 
    Catch ex As Exception 
     MessageBox.Show(ex.Message) 
    Finally 
     mysqlConn.Dispose() 'closes connection 
    End Try 
+1

可能是[爲什麼要將更改保存到數據庫更改失敗?](http://stackoverflow.com/q/17147249/1070452)你永遠不會以純文本形式存儲密碼 – Plutonix

+0

這不是公共形式,並且會永遠不會,所以我不想哈希密碼,還沒有atleast :) – Drax

+0

如果它顯示該消息,那麼數據將被保存,因爲數據庫中至少有一行受到影響。你只是在錯誤的地方或在錯誤的時間查看數據。 @Plutonix提供的鏈接無疑與情況相關。簡而言之,每次構建時,您的兩個數據庫和包含您的更改的數據庫都會被覆蓋。無論是你正在尋找一個不包含你的改變,或者你正在尋找一個,但在它被覆蓋之後。 – jmcilhinney

回答

0

整個用戶實例和ATTAC hDbFileName =方法有缺陷 - 最好!在Visual Studio中運行應用程序時,它將複製.mdf文件(從您的App_Data目錄到輸出目錄 - 通常爲.\bin\debug) - 最有可能爲,您的INSERT工作得很好 - 但是您只是看着錯誤.mdf文件到底!

如果你想堅持這種方法,那麼試着在mySqlConn.Close()調用上放一個斷點 - 然後用SQL Server Mgmt Studio Express檢查.mdf文件 - 我幾乎可以肯定你的數據在那裏。

相關問題