我在Project文件夹中有SQL SERVER数据库文件。 Debug文件夹中的相同文件副本。我在SQL Server中附加这两个文件。项目文件夹表中的文件在所有字段中都包含空值。但是从Debug文件夹附加的文件中有数据。我使用Project文件夹中的文件创建了连接字符串。其实哪个数据库文件是正确的文件?试着解决这个问题。SQL Server中的数据库连接和数据保存
连接字符串
Public Conn As SqlConnection
Public Function getConnect() As SqlConnection
Conn = New SqlConnection("Data Source=.\SQLEXPRESS;AttachDbFilename=|DataDirectory|\EMP_DB.mdf;Integrated Security=True;Connect Timeout=30;User Instance=True")
Return Conn
End Function
这是我的代码..
Try
getConnect()
Dim query As SqlCommand
Dim strSQL As String
strSQL = "INSERT INTO EMPLOYEE (EMP_ID,EMP_NAME,EMP_FNAME,EMP_GENDER,EMP_DOB,EMP_CAST,EMP_DEPART,EMP_DESIG,EMP_DOJ,EMP_SALARY,EMP_PF_ESI,EMP_BRANCH,EMP_CONTACT,EMP_ADDRESS)VALUES(@EMP_ID,@EMP_NAME,@EMP_FNAME,@EMP_GENDER,@EMP_DOB,@EMP_CAST,@EMP_DEPART,@EMP_DESIG,@EMP_DOJ,@EMP_SALARY,@EMP_PF_ESI,@EMP_BRANCH,@EMP_CONTACT,@EMP_ADDRESS)"
query = New SqlCommand(strSQL, Conn)
query.Parameters.Add(New SqlParameter("@EMP_ID", TXTEMPID.Text))
query.Parameters.Add(New SqlParameter("@EMP_NAME", TXTNAME.Text))
query.Parameters.Add(New SqlParameter("@EMP_FNAME", TXTFNAME.Text))
query.Parameters.Add(New SqlParameter("@EMP_GENDER", gend))
query.Parameters.Add(New SqlParameter("@EMP_DOB", DTPEMPDOB.Value.Date))
query.Parameters.Add(New SqlParameter("@EMP_CAST", TXTCASTE.Text))
query.Parameters.Add(New SqlParameter("@EMP_DEPART", CMBDEPT.Text))
query.Parameters.Add(New SqlParameter("@EMP_DESIG", CMBDESIG.Text))
query.Parameters.Add(New SqlParameter("@EMP_DOJ", DTPEMPDOJ.Value.Date))
query.Parameters.Add(New SqlParameter("@EMP_SALARY", MTXTSAL.Text))
query.Parameters.Add(New SqlParameter("@EMP_PF_ESI", MTXTPFESI.Text))
query.Parameters.Add(New SqlParameter("@EMP_BRANCH", TXTBRANCH.Text))
query.Parameters.Add(New SqlParameter("@EMP_CONTACT", MTXTCONTACT.Text))
query.Parameters.Add(New SqlParameter("@EMP_ADDRESS", RTXTADDRESS.Text))
Conn.Open()
Dim numAffected = query.ExecuteNonQuery()
'MessageBox.Show(numAffected)
Conn.Close()
If numAffected > 0 Then
Call getConnect()
MessageBox.Show("Successfully Added", "Add", MessageBoxButtons.OK, MessageBoxIcon.Information)
BTNCLEAR.PerformClick()
Else
MsgBox("No record was inserted")
End If
Catch ex As Exception
MsgBox("ERROR: " + ex.Message, MsgBoxStyle.Information, "Add")
End Try
End If
我改变我的连接字符串,这样的...
Data Source=.\SQLEXPRESS;AttachDbFilename=|DataDirectory|\EMP_DB.mdf;Initial Catalog=EMP_DB;Integrated Security=True;Connect Timeout=30;User Instance=False
'哪个数据库文件是正确的文件' - 我们该怎么知道?你想做什么? – Bridge
@Bridge - 我尝试从VB.NET表单插入数据到数据库中。当我按提交按钮时,它显示消息“成功添加”。但我检查数据库表。所有字段都有空值。我从Debug目录中附加数据库文件后。它的表格有数据。那么哪个数据库文件是主数据库?在项目目录或Debug目录中? – Thanzeem
如果您试图直接附加到SQL/Server数据库文件,那么您几乎肯定会以错误的方式执行操作。 – PeterJ