SelectDB

本函數用於從開啟的資料庫內的表格中搜尋資料。

格式
SelectDB (#資料庫編號,表格名稱,Select條件,Sort方法)

參數

資料庫編號
用於指定以OpenDB指定的資料庫編號(501~508的整數值)。
表格名稱
指定要執行資料查找的表格名稱。若以檔案編號指定的資料庫類別為Excel活頁簿,則指定Excel工作表或有命名的表格。若要指定Excel工作表,請在工作表名稱末尾附加$,並用[]括起來。若要指定以Excel工作表內的名稱指定的區域時,請用[]括起名稱。
Select條件
指定查找條件。可用AND、OR指定複合條件。未指定搜尋條件時,則搜尋表格內的所有資料。
Sort方法
指定提取查找資料的順序。指定Sort鍵和Sort順序(按升序[ASC]/降序[DESC])。若省略Sort順序,則表示已指定Sort鍵的升序。若省略Sort方法,則依開啟的資料庫確定順序。

傳回值
用於傳回搜尋行的總數。

說明
依照Sort條件從開啟的資料庫之指定表格中對符合Select條件的資料進行Sort操作。

務必在透過Input#、Print#載入/寫入資料前執行。

若已開啟的資料庫為Excel活頁簿,請在以工作表及名稱定義之區域的第1行記述用於搜尋的列名。

此外,若為Excel 2007活頁簿,請指定工作表名稱。無法存取以名稱定義的區域。

注意


需連接有安裝RC+的PC。


參照
OpenDB、CloseDB、UpdateDB、DeleteDB、Input #、Print #

SelectDB函數範例
使用SQL資料庫的範例

以下是以TitleOfCourtesy按EmployeeID的降序從SQL服務器2000範例資料庫Northwind的表格Employees載入Ms.資料的簡易範例。

  Integer count, i, eid
  String Lastname$, Firstname$, Title$

  OpenDB #501, SQL, "(LOCAL)", "Northwind"
  count = SelectDB(#501, "Employees", "TitleOfCourtesy = 'Ms.'", "EmployeeID DESC")
  For i = 0 To count - 1
    Input #501, eid, Lastname$, Firstname$, Title$
    Print eid, ",", Lastname$, ",", Firstname$, ",", Title$
  Next
  CloseDB #501

使用Access資料庫的範例

以下是按ID的升序從Microsoft Access 2007範例資料庫學生名冊的表格中載入職務為組長的資料之簡易範例。

  Integer count, i, eid
  String Lastname$, Firstname$, dummy$

  OpenDB #502, Access, "c:\MyDataBase\學生名冊.accdb"
  count = SelectDB(#502, "學生", "職務 = '組長'", "ID")
  For i = 0 To count - 1
    Input #502, eid, dummy$, dummy$, Lastname$, dummy$, Firstname$
    Print eid, ",", Lastname$, ",", Firstname$
  Next
  CloseDB #502

使用Excel活頁簿的範例

以下所示為按ID的升序從Microsoft Excel活頁簿學生名冊的學生工作表載入Age未滿25歲的資料之簡易範例。

  Integer count, i, eid
  String Lastname$, Firstname$

  OpenDB #503, Excel, "c:\MyDataBase\學生名冊.xls"
  count = SelectDB(#503, "[學生$]", "Age < 25", "ID ASC")
  For i = 0 To count - 1
    Input #503, eid, Lastname$, Firstname$
    Print eid, ",", Lastname$, ",", Firstname$
  Next
  CloseDB #503