代码之家  ›  专栏  ›  技术社区  ›  seanyboy

如何使用vb.net将数据插入到访问表中?

  •  3
  • seanyboy  · 技术社区  · 16 年前

    我想在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 回复  |  直到 16 年前
        1
  •  2
  •   Stefan    16 年前

    这是一种方法:

    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为我创建更新/删除/修改。然后您可以这样做(假设您的数据库有一个UserTable,并且您在数据集中映射了它):

        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)
    
        2
  •  1
  •   Siddharth Rout    13 年前

    如何在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()
    
        3
  •  -1
  •   Joel Coehoorn    16 年前

    不幸的是,世界并没有按照你认为的方式重新安排自己。如果您想使用数据库,那么最好至少对SQL有所了解,这通常是这样做的。

    从好的方面来说,有一类产品可以满足你的需求。您可以查找对象关系映射(ORM)工具,如ActiveRecord、NHibernate或Linq。但还是要学习一些SQL。

    推荐文章