投稿日 | : 2004/06/17(Thu) 20:28 |
投稿者 | : まんたろー |
URL | : |
タイトル | : ADO:SQL実行時のエラー |
こんにちは。
ADOって物を使って、MDBの中にあるテーブルのレコードを削除しようってことをやろうとしてます。
ADOをつかうのは初めてで....(DB自体もほとんどはじめて)
困っていることがあるんです。
一番下に書いたようなコードでの中で、
mySql = "DELETE FROM " & myAdoTbl.Name & ";"
のところが問題です。
myAdoTbl.Name が"Usage"ですとエラーになるんです。
メッセージは「From句の構文エラーです。」です。
どうも、Table名に依存しているようで...
こんなことって有るんですかね?
Usageってのは何かの予約語にでもなっているんですか?
どなたかご存知の方教えてください。
よろしくお願いします。
Sub deleteOldRs()
Dim cn As New ADODB.Connection
Dim existTbl As String
Dim myTbls As ADOX.Tables
Dim myAdoTbl As New ADOX.Table
Dim mySql As String
Set expCat = New ADOX.Catalog
expCat.ActiveConnection = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & MDBfile
cn.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & MDBfile
cn.Open
Dim tmpRS As New ADODB.Recordset
Set myTbls = expCat.Tables
Set myTblCol = New Collection
For i = 0 To myTbls.Count - 1
Err.Clear
Set myAdoTbl = myTbls.Item(i)
If myAdoTbl.Type = "TABLE" Then
mySql = "DELETE FROM " & myAdoTbl.Name & ";"
Set tmpRS = cn.Execute(mySql)
End If
Next i
End Sub