Script SQL 指令
在 Agentflow 中,可以使用 SQL 語言對資料庫進行新增、刪除、更新和查詢操作。此外,Agentflow 還提供了一個特殊的語法 ArtSQLloadValue(…)
,允許您利用表單域作為條件來進行查詢。
SQL 操作函式對應表
回傳值/對象 | 函式(數據型態 參數) | 說明 |
---|---|---|
Vector | SQLloadValue(String sql) |
執行 SQL 查詢命令,返回結果集 |
boolean | SQLinsertValue(String sql) |
執行 SQL 新增命令,返回是否成功 |
boolean | SQLupdateValue(String sql) |
執行 SQL 更新命令,返回是否成功 |
boolean | SQLdeleteValue(String sql) |
執行 SQL 刪除命令,返回是否成功 |
Vector | ArtSQLloadValue(String sql) |
利用窗體名稱及字段進行 SQL 查詢,返回結果集 |
查詢所有員工的名字
要在 Agentflow 的資料庫中查詢所有非 “Administrator” 的員工名字,可以使用以下 SQL 語句:
var sql = "SELECT USERNAME FROM MEM_GENINF WHERE MEMID != 'Administrator'";
用 SQL 指令查詢某一字段
假設要從 tb_Customer
表中查詢 Customer_Name
為 “Xina” 的客戶 ID,可以使用以下語句:
var name = "Xina"; var str = "select Customer_ID from tb_Customer where Customer_Name = '" + name + "'"; var RecordSet = Client.SQLloadValue(str); // RecordSet 是一個 Vector 物件 // 檢查是否查詢到數據 if (RecordSet.size() > 0) { var Record = RecordSet.get(0); // 取出第一筆記錄 var ID = Record.get("Customer_ID"); // 取得 Customer_ID 字段的值 }
用 SQL 指令更新資料庫中某一字段值
如果需要將 tb_Customer
表中 Customer_ID
為 “001” 的客戶名字更改為 “Xina”,可以使用以下語句:
var name = "Xina"; var str = "update tb_Customer set Customer_Name = '" + name + "' where Customer_ID = '001'"; Client.SQLupdateValue(str);
使用特殊 SQL 指令進行條件查詢
假設要依據表單名稱 “請假單” 和其中的字段 “請假人” 為條件,查詢請假天數,可以使用以下語句:
var name = "Xina"; var str = "select 請假天數 from 請假單 where 請假人 = '" + name + "'"; var RecordSet = Client.ArtSQLloadValue(str); // 利用 ArtSQLloadValue 進行查詢 // 檢查是否查詢到數據 if (RecordSet.size() > 0) { var Record = RecordSet.get(0); // 取出第一筆記錄 var day = Record.get("請假天數"); // 取得 請假天數 字段的值 }