VB 2010 の試用版をダウンロードし、Access 2007 MDB ファイルに接続する小さなアプリケーションを作成しました。
いくつかのことがうまくいかない:
公開して、生成されたセットアップ ファイルを実行しようとすると、.MDB ファイルが見つからないと表示されます。
開発中に実行すると (F5)、正常に動作し、DataGridView に新しいデータを入力すると、セッションを閉じて再度 F5 を押すと、新しく入力されたデータがまだ存在するため、保存されることがわかります。(データを更新するための関連コードは十分に単純です):
Me.Validate() Me.MenuItemsBindingSource.EndEdit() Me.MenuItemsTableAdapter.Update(Me.MenuOrdersDataSet.MenuItems) Me.MenuOrdersDataSet.AcceptChanges()
しかし、プロジェクト全体を閉じて再実行し、DataGridView を表示するか、手動で .MDB ファイルをチェックアウトすると、新しく入力されたデータがなくなります。
これは私の接続コードです:
Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
Me.MenuItemsTableAdapter.Fill(Me.MenuOrdersDataSet.MenuItems)
Dim con As New OleDb.OleDbConnection
Dim dbString As String
Dim ds As New DataSet
Dim da As OleDb.OleDbDataAdapter
Dim sql As String
dbString = "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=|DataDirectory|\MenuOrders.accdb"
con.ConnectionString = dbString
con.Open()
sql = "SELECT * FROM MenuItems"
da = New OleDb.OleDbDataAdapter(sql, con)
da.Fill(ds, "MenuItems")
con.Close()
End Sub
どうしたの?これらの問題は試用版を持っていることに関連していますか、それとも私が知っておくべき明らかな問題は他にありますか?