如何使用vb.net将数据插入Access表?

时间:2008-12-03 14:41:35

标签: .net vb.net ms-access insert

我想在Access数据库中插入一个新行。我正在做类似的事情:

oConnection = new Connection("connectionstring")
oTable = oCennection.table("Orders")
oRow = oTable.NewRow
oRow.field("OrderNo")=21
oRow.field("Customer") = "ABC001"
oTable.insert

这对我来说似乎是一种明智的做事方式。

但是,我在网上寻找的所有示例似乎都是通过构建SQL语句或通过创建“SELECT * From ...”来插入数据,然后使用它来创建大量对象,其中一个出现允许你...
- 使用表格的当前内容填充数组 - 在此数组中插入一个新行 - 使用对阵列的更改来更新数据库。

使用vb.net将数据插入Access数据库的最简单方法是什么? 我可以使用的方法与上面的pCode类似吗?

3 个答案:

答案 0 :(得分:2)

这是一种方式:

cn = New OleDbConnection("Provider=Microsoft.Jet.OLEDB.4.0;Data Source=C:\emp.mdb;")
cn.Open()
str = "insert into table1 values(21,'ABC001')"
cmd = New OleDbCommand(str, cn)
cmd.ExecuteNonQuery

我会创建一个数据集,添加一个连接到Access数据库的tableadapter,然后让tableadapter为我创建更新/删除/修改。然后你就可以这样做(假设你的数据库有一个有用的,你在数据集中映射了它):

    Dim UserDS As New UserDS
    Dim UserDA As New UserDSTableAdapters.UsersTableAdapter
    Dim NewUser As UserDS.UsersRow = UserDS.Users.NewUsersRow

    NewUser.UserName = "Stefan"
    NewUser.LastName = "Karlsson"

    UserDS.User.AddUserRow(NewUser)

    UserDA.Update(UserDS.Users)

答案 1 :(得分:1)

如何在vb.net中插入字符串只插入整数my pgm

Try
    cn = New OleDbConnection("Provider=Microsoft.Jet.OLEDB.4.0;Data Source=C:\Documents and Settings\User\My Documents\db1.mdb;")
    cn.Open()
    str = "insert into table1 values(" & CInt(t2.Text) & ",'" & (t1.Text) & ") "
    cmd = New OleDbCommand(str, cn)
    icount = cmd.ExecuteNonQuery
    MessageBox.Show("stored")
Catch
End Try
cn.Close()

答案 2 :(得分:-1)

不幸的是,世界并没有重新安排自己,以适应你认为它应该如何运作。如果你想使用数据库,最好至少对SQL感到满意,因为这通常是如何完成的。

从好的方面来说,有一整类产品可以满足您的需求。您可以查找像ActiveRecord,NHibernate或LINQ这样的对象关系映射(ORM)工具。但仍然学习一些SQL。