-1
VB.netのSQLテーブルからすべてのレコードを削除しようとしています。これを行うための私のコードは次のとおりです。MtableTAとItableTAはテーブルアダプタいる間VB.netのSQLテーブルから項目を削除する
Dim SQL As String = "DELETE FROM MTable"
Using CN As New OleDb.OleDbConnection(AddPage.DBConnect)
CN.Open()
Dim DBcmd As New OleDb.OleDbCommand(SQL, CN)
DBcmd.ExecuteNonQuery()
CN.Close()
End Using
'SQLDataset.Tables("Mtable").Clear()
MtableTA.Update(SQLDataset)
SQL = "DELETE FROM ITable"
Using CN As New OleDb.OleDbConnection(AddPage.DBConnect)
CN.Open()
Dim DBcmd As New OleDb.OleDbCommand(SQL, CN)
DBcmd.ExecuteNonQuery()
CN.Close()
End Using
' SQLDataset.Tables("ITable").Clear()
ITableTA.Update(SQLDataset)
MtableとItablesは、SQL表です。
Iはまた
An unhandled exception of type 'System.Data.DBConcurrencyException' occurred in System.Data.dll
Additional information: Concurrency violation: the UpdateCommand affected 0 of the expected 1 records.
このoccurssは、上記のコードで提供されていない部分を述べたが、MtableTA.update(SQLDataset)への呼び出しでエラーになってしまいます。どんな助けも非常に高く評価されるでしょう。もし私がOLEDBを利用しているなら、私はOLEDBも使用しています
に実際の状況とそれらを同期するTableAdaptersをリフレッシュする必要がありOleDbCommand.ExecuteNonQuery使用して直接行を削除した後
更新はしていないが削除しているからです。 –
FYI MySQLはアクセスできない – Plutonix
MySQLについてはわかりませんが、SQL ServerではTruncate Tableがより良いオプションです。切り捨て前にテーブル・アダプターをすべて破棄し、後で再作成してください。 – rheitzman