您对 DataAdapter.Update 的作用有些困惑。更新将您的 InsertCommand、UpdateCommand、DeleteCommand 应用于 DataSource 中存在的每个已添加、已修改或已删除的行(假设 ds 是一个数据集)。
它不会自行向数据库添加/删除/更新记录。
如果你想向数据库中添加一条记录,你应该像这样编写(伪)代码
Using con = GetConnection()
Using cmd = new con.CreateCommand()
cmd.CommandText = "Insert Into Table1 Values( 1, ?)"
cmd.Parameters.AddWithValue("@param1", textbox1.Text)
cmd.Connection = con
con.Open()
cmd.ExecuteNonQuery()
End Using
End Using
请注意使用 Using 语句来确保关闭和处理连接和命令。此外,永远不要连接字符串来构建 sql 命令。使用参数可以避免解析问题和 SQLInjection 攻击。
编辑:根据您在下面的评论并假设 Table1 的第一列是自动编号字段,您可以通过这种方式更改代码
Using con = GetConnection()
Using cmd = new con.CreateCommand()
cmd.CommandText = "Insert Into Table1 Values(?)"
cmd.Parameters.AddWithValue("@param1", textbox1.Text)
cmd.Connection = con
con.Open()
cmd.ExecuteNonQuery()
End Using
End Using
此外,对于“未添加任何内容”的问题,我认为您的项目中包含数据库文件 (mdb),并且属性Copy To The Output Directory
设置为Copy Always
在此页面上查看 MSDN 上的详细说明