OpenDB
開啟資料庫、Excel活頁簿。
格式
OpenDB #資料庫編號, 資料庫類別 [, SQL伺服器名稱],資料庫名稱
參數
- 資料庫編號
- 用於指定501~508的整數。
- 資料庫類型
- 從[SQL]、[Access]、[Excel]中選擇要開啟的資料庫類型。
- SQL伺服器名稱
- 若將[SQL]指定為資料庫類型,則指定SQL伺服器名稱。若省略(LOCAL)則表示已指定伺服器。不可指定網路上的SQL伺服器。
若將[Access]或[Excel]指定為資料庫類別,則不指定SQL伺服器名稱。 - 資料庫名稱
-
- 若將[SQL]指定為資料庫類別,則指定SQL伺服器上的資料庫名稱。
- 若有指定[Access],則指定Access檔名。若省略Access檔名路徑,則搜尋目前資料夾。詳細內容請參閱ChDisk。
- 若有指定[Excel],則指定Excel檔名。Excel檔案可指定的格式為Excel 2007活頁簿、Excel 97-2003活頁簿檔案。若省略Excel檔名路徑,則搜尋目前資料夾。詳細內容請參閱ChDisk。
說明
以指定的編號開啟指定的資料庫。
指定的資料庫必須存在於裝有RC+的PC磁碟上。不存在時則發生錯誤。在資料庫處於開啟狀態時,指定的檔案編號用於識別該資料庫。在以CloseDB命令關閉資料庫之前,不可用於瀏覽其它資料庫。在資料庫操作命令(SelectDB, Print#, Input#, CloseDB)中使用檔案編號。
不可使用Microsoft office 2010 64位元版本的Access和Excel檔案。
注意
需連接有安裝RC+的PC。
參照
SelectDB函數, CloseDB, UpdateDB, DeleteDB, Input #, Print #
OpenDB範例
使用SQL資料庫的範例
以下所示為在使用SQL伺服器2000範例資料庫Northwind的情況下從表中載入資料的簡易範例。
Integer count, i, eid
String Lastname$, Firstname$, Title$
OpenDB #501, SQL, "(LOCAL)", "Northwind"
count = SelectDB(#501, "Employees")
For i = 0 To count - 1
Input #501, eid, Lastname$, Firstname$, Title$
Print eid, ",", Lastname$, ",", Firstname$, ",", Title$
Next
CloseDB #501
使用Access資料庫的範例
以下所示為在使用Microsoft Access 2007範例資料庫學生名冊的情況下從表中載入資料的簡易範例。
Integer count, i, eid
String Lastname$, Firstname$, dummy$
OpenDB #502, Access, "c:\MyDataBase\學生名冊.accdb"
count = SelectDB(#502, "學生")
For i = 0 To count - 1
Input #502, eid, dummy$, dummy$, Lastname$, dummy$, Firstname$
Print eid, ",", Lastname$, ",", Firstname$
Next
CloseDB #502
使用Excel活頁簿的範例
以下示範一個從RC+8.0附屬的範例專案「DrawEpsonLogo」中的Excel活頁簿EPSON_LOGO.xls之LOGO工作表讀取資料的簡單範例。
有關範例中使用的Excel活頁簿,請參閱以下內容。
範例檔案
Integer count, i, p, x, y
String desc$
OpenDB #501, Excel, "C:\EpsonRC80\projects\Samples\Database\DrawEpsonLogo\EPSON_LOGO.xls"
count = SelectDB(#501, "[LOGO$]")
For i = 0 To count - 1
Input #501, p, x, y, desc$
Print "Point", p, ", X:", x, ", Y:", y, ", Descripption:", desc$
Next
'輸出結果
'Point 1, X: 0, Y: 51, Descripption:E1
'Point 2, X: 38, Y: 51, Descripption:E2
'Point 3, X: 38, Y: 42, Descripption:E3
'Point 4, X: 10, Y: 42, Descripption:E4
'Point 5, X: 10, Y: 30, Descripption:E5
' 繼續…