您好, 欢迎来到 !    登录 | 注册 | | 设为首页 | 收藏本站

使用vb.net将MS Access行插入数据库

使用vb.net将MS Access行插入数据库

正如其他答案已经解释的那样,您需要在包含空格的列名称周围使用方括号,但是还需要为字段添加一个值,否则您将无法执行该命令。

我将尝试展示一个完整的例子

Dim dbProvider  = "PROVIDER=Microsoft.Jet.OLEDB.4.0;"
Dim dbSource = "Data Source= C:\Users\Owner\Desktop\Contacts.mdb"

Dim sql = "INSERT INTO Contacts (FName, LName, Age, " & _ 
          "[Address Line 1], [Address Line 2], City, State, Zip, " & _ 
          "[Home Phone], [Work Phone], Email, Sex) " & _
          "VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)"

Using con = New OleDb.OleDbConnection(dbProvider & dbSource)
Using cmd = new OleDb.OleDbCommand(sql, con)
    con.open()
    cmd.Parameters.AddWithValue("@p1", "Value For FName")
    cmd.Parameters.AddWithValue("@p2", "Value For LName")
    cmd.Parameters.AddWithValue("@p3", Convert.ToInt32("Value For Age"))
    .... and so on for the other parameters .....
    cmd.ExecuteNonQuery()
End Using
End Using

在此示例中,我为参数(?)插入了12个占位符,然后在所需的12个参数中添加了前3个参数。请注意,对于OleDb,参数集合仍然需要添加名称@pX ),但是在执行查询时,将按照占位符的相同顺序来选择参数值。

另外,我还使用了Using语句关闭并处理了诸如连接和命令之类的一次性对象。

最后,通常使用OleDbCommand中的ExecuteNonQuery执行插入查询,并且无需执行SELECT查询时,就无需使用OleDbAdapter并调用Fill来加载数据集。

Access 2022/1/1 18:37:23 有329人围观

撰写回答


你尚未登录,登录后可以

和开发者交流问题的细节

关注并接收问题和回答的更新提醒

参与内容的编辑和改进,让解决方法与时俱进

请先登录

推荐问题


联系我
置顶