vb.netを使用してAccessテーブルにデータを挿入するにはどうすればよいですか?

StackOverflow https://stackoverflow.com/questions/337333

  •  22-07-2019
  •  | 
  •  

質問

新しい行を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に似た、使用できる方法はありますか?

役に立ちましたか?

解決

これは1つの方法です。

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にupdate / delete / modifyを作成させます。次に、このようにすることができます(データベースにユーザーテーブルがあり、それをデータセットにマッピングしたと仮定します):

    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)

他のヒント

vb.netに文字列を挿入する方法私の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()

残念ながら、世界はあなたがそれがどのように働くべきかを考える方法に合うようにそれ自身を再編成しません。データベースを使用したい場合は、SQLを使用するのが一般的であるため、少なくともある程度はSQLに慣れることをお勧めします。

明るい面では、あなたが望むものを行う製品のカテゴリーがあります。 ActiveRecord、NHibernate、またはLINQなどのオブジェクトリレーショナルマッピング(ORM)ツールを探すことができます。しかし、まだいくつかのSQLを学んでください。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top