Much ADO About Text Files
http://msdn.microsoft.com/en-us/library/ms974559.aspx
教你如何把Text檔當作資料庫一般,讓ADO去抓Text檔的資料。
2013年11月12日 星期二
2012年4月3日 星期二
[ADOX]印出查詢中的SQL指令
Sub test()
Dim objConn As Object, objCat As Object, Prc As Object, i As Long
Set objConn = CreateObject("adodb.connection")
Set objCat = CreateObject("adox.catalog")
With objConn
.connectionstring = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=myPath\泛myAccess.mdb"
.Open
If .State <> 1 Then Exit Sub
End With
On Error GoTo errHandle
With objCat
.activeconnection = objConn
i = 1
For Each Prc In objCat.procedures
Cells(i, 1).Value = Prc.Name
Cells(i, 2).Value = Prc.Command.CommandText
i = i + 1
Next
End With
objConn.Close
Exit Sub
errHandle:
objConn.Close
End Sub
[ADOX]查詢資料庫中資料表之名稱
要查詢或定義資料庫的內部結構(例如:欄位、主鍵、table name、view name等),就要用ADOX物件。
要使用ADOX之前,要先用ADO建立連結,之後才能使用ADOX物件。
Dim objConn as object, objCat as object, objTbl as object
set objConn=createobjcet("ADODB.connection")
set objCat=createobjcet("ADOX.catalog")
set objTbl=createobjcet("ADOX.table")
with objConn
.connectionstring="Provider="Microsoft.Jet.OLEDB.4.0; data source=mypath/myAccessFile.mdb"
.open
end with
with objCat
.activeconnection=objconn
for each objTbl in objCat.tables
debug.print objTbl.name
next
end with
要使用ADOX之前,要先用ADO建立連結,之後才能使用ADOX物件。
Dim objConn as object, objCat as object, objTbl as object
set objConn=createobjcet("ADODB.connection")
set objCat=createobjcet("ADOX.catalog")
set objTbl=createobjcet("ADOX.table")
with objConn
.connectionstring="Provider="Microsoft.Jet.OLEDB.4.0; data source=mypath/myAccessFile.mdb"
.open
end with
with objCat
.activeconnection=objconn
for each objTbl in objCat.tables
debug.print objTbl.name
next
end with
2012年3月3日 星期六
Access VBA儲存查詢
Microsoft的Access不支援Create View的SQL指令,因此每寫完一段Query(查詢)之後,就要用GUI(圖形使用者介面)把Query存起來。
對我這個講究自動化的人(其實就是懶),這種作法不是很方便。
幸好,就Access而言,SQL不行還有VBA可以用,以下的程式碼是利用ADOX把Query存起來。
Sub CreateQuery()
Dim cat As New ADOX.Catalog
Dim cd As New ADODB.Command
Dim sSQL As String
cat.ActiveConnection = "Provider=Microsoft.Jet.OLEDB.4.0;" & _
"Data Source=C:\mydb.mdb;"
sSQL = "SELECT * FROM Newtable"
cd.CommandText = sSQL
cat.Views.Append "Newquery", cd
End Sub
對我這個講究自動化的人(其實就是懶),這種作法不是很方便。
幸好,就Access而言,SQL不行還有VBA可以用,以下的程式碼是利用ADOX把Query存起來。
Sub CreateQuery()
Dim cat As New ADOX.Catalog
Dim cd As New ADODB.Command
Dim sSQL As String
cat.ActiveConnection = "Provider=Microsoft.Jet.OLEDB.4.0;" & _
"Data Source=C:\mydb.mdb;"
sSQL = "SELECT * FROM Newtable"
cd.CommandText = sSQL
cat.Views.Append "Newquery", cd
End Sub
2010年12月24日 星期五
[VBA][ADO]如何設定資料庫聯結(Connection)
在ADO中常常需要設定資料庫聯結,以便存取、修改資料庫的資料。
但是,每次都要打很多文字來設定Connection屬性,有點麻煩。
最近才知道可以利用UDL檔預先設定好這些屬性。先記在這裡,以免忘記。
建立及設定UDL檔的方式:
http://msdn.microsoft.com/zh-tw/library/aa301691(v=VS.71).aspx
在ADO中引用UDL檔的方式:
http://msdn.microsoft.com/zh-tw/library/aa301678(v=VS.71).aspx
但是,每次都要打很多文字來設定Connection屬性,有點麻煩。
最近才知道可以利用UDL檔預先設定好這些屬性。先記在這裡,以免忘記。
建立及設定UDL檔的方式:
http://msdn.microsoft.com/zh-tw/library/aa301691(v=VS.71).aspx
在ADO中引用UDL檔的方式:
http://msdn.microsoft.com/zh-tw/library/aa301678(v=VS.71).aspx
訂閱:
文章 (Atom)