[英]Insert data on SQL Table… cannot find the data
VB Express 2010
1個表格,1個文本框,1個按鈕
我通過單擊Project>add new item>service based database>
來創建.mdf sql數據庫文件,並將其命名為DXDB-表名DXtest和1列名為test
似乎代碼可以正常工作..但是,當我右鍵單擊DXtest並單擊顯示表數據...時,那里什么都沒有... =(似乎它並沒有真正將數據插入數據庫本身...
這是完整的代碼
Imports System.Data
Imports System.Data.SqlClient
Public Class Form1
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
Dim con As New SqlConnection
Dim cmd As New SqlCommand
Dim Tx1 As String
Tx1 = TextBox1.Text
con.ConnectionString = "Data Source=.\SQLEXPRESS;AttachDbFilename=|DataDirectory|\DXDB.mdf;Integrated Security=True;Connect Timeout=30;User Instance=True"
con.Open()
cmd.Connection = con
cmd.CommandText = "INSERT INTO DXTest(Test) VALUES(@Tx1)"
cmd.Parameters.Add("@Tx1", SqlDbType.VarChar, 50).Value = Tx1
cmd.ExecuteNonQuery()
con.Close()
End Sub
End Class
整個用戶實例和AttachDbFileName =方法都有缺陷-充其量! 在Visual Studio中運行應用程序時,它將在.mdf
文件周圍復制(從App_Data
目錄復制到輸出目錄-通常是.\\bin\\debug
應用程序運行所在的位置),並且很可能 INSERT
可以正常工作-但最后您只是看錯了.mdf文件 !
如果您要堅持這種方法,請嘗試在myConnection.Close()
調用上放置一個斷點,然后使用SQL Server Mgmt Studio Express檢查.mdf
文件-我幾乎可以確定您的數據在那里。
我認為真正的解決方案是
安裝SQL Server Express(並且您已經完成了此操作)
安裝SQL Server Management Studio Express
在SSMS Express中創建數據庫,給它一個邏輯名(例如DXDB
)
使用其邏輯數據庫名稱 (在服務器上創建時提供)連接到該數據庫 -並且不要弄亂物理數據庫文件和用戶實例。 在這種情況下,您的連接字符串將類似於:
Data Source=.\\SQLEXPRESS;Database=DXDB;Integrated Security=True
和其他一切是完全一樣的前...
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.