C# と VB.NET の質問掲示板

わんくま同盟

ASP.NET、C++/CLI、Java 何でもどうぞ

C# と VB.NET の入門サイト


(過去ログ 104 を表示中)
■61862 / )  データベース間のレコードコピーでエラー
□投稿者/ まぁ (1回)-(2011/09/09(Fri) 11:26:00)

分類:[VB.NET/VB2005 以降] 

開発環境等:Vista VB.NET2008 Microsoft.Jet.OLEDB.4.0

あるデータベース(Master.mdb)のテーブル(tblSagyoushaFull)から必要なカラムのデータだけ取り出して、
別のデータベース(MasterA.mdb)のテーブル(tblSagyousha)を新規に作る事を考えています。

以下のコードでデバッグ実行ではエラーなく動きますが、コンパイルした実行ファイルでは実行時にエラー発生します。
※下記のコピー実行の部分で「FROM 句の構文エラーです。」が発生

この場合のSQL文の書き方または、別のデータベースからデータをうまく持ってくる方法ご教授下さい。
宜しくお願いします。


Dim CN As New System.Data.OleDb.OleDbConnection
Dim SQL As System.Data.OleDb.OleDbCommand

'データベースファイル名
Dim myDBFileName As String 'コピー元
Dim myDBFileNameA As String 'コピー先
Dim myCount As Integer

myDBFileName = myRootPath & "\Master.mdb"
myDBFileNameA = myRootPath & "\MasterA.mdb"
If Dir(myDBFileName) = "" Then Exit Sub
If Dir(myDBFileNameA) = "" Then Exit Sub

CN.ConnectionString = "Provider=""Microsoft.Jet.OLEDB.4.0"";" & "Data Source=""" & myDBFileNameA & """;"
SQL = CN.CreateCommand

'一旦コピー先のテーブル削除
SQL.CommandText = "DROP TABLE tblSagyousha"
CN.Open()
myCount = SQL.ExecuteNonQuery()
CN.Close()

'コピー実行
SQL.CommandText = "SELECT Code,Namae INTO tblSagyousha FROM " & myDBFileName & ".tblSagyoushaFull"
CN.Open()
myCount = SQL.ExecuteNonQuery()
CN.Close()

SQL.Dispose()
CN.Dispose()


返信 編集キー/


管理者用

- Child Tree -