這些數據庫函數使用了流行且易於使用的SQLite引擎。該引擎的便利之處在於,整個數據庫都位於用戶PC硬盤上的單個文件中。
這些函數可以方便地創建表格、向表中添加數據、執行更改和使用簡單的SQL請求進行採樣:
數據庫函數可以使您通過SQL請求替換重複率最高的大數據組處理操作,因此常常可以使用DatabaseExecute/DatabasePrepare調用,而不是編寫複雜的循環和比較。使用DatabaseReadBind函數,方便地獲取現有架構中的查詢結果。該函數運行在單個調用中一次性讀取所有記錄字段。
若要加快讀取、編寫和更改速度,可以使用DATABASE_OPEN_MEMORY標識在RAM中打開/創建數據庫,雖然這樣的數據庫只適用於特定的應用程序,不可共享。當處理位於硬盤上的數據庫時,應該使用DatabaseTransactionBegin/DatabaseTransactionCommit/DatabaseTransactionRollback將批量數據插入/更改封裝在交易事務中。這可以使整個過程加快數百倍。
若要開始使用函數,請參閱文章SQLite:本地操作MQL5中的SQL數據庫。
函數 |
操作 |
在指定文件中打開或創建數據庫 |
|
關閉數據庫 |
|
從文件導入數據到表格中 |
|
將表格或SQL請求執行結果到處到CSV文件 |
|
在專家日誌中打印表格或SQL執行結果 |
|
檢查數據庫中是否存在表格 |
|
執行對指定數據庫的請求 |
|
創建可使用DatabaseRead()執行的請求句柄 |
|
重置請求,比如調用DatabasePrepare()之後 |
|
在請求中設置一個參數值 |
|
將數組設置爲參數值 |
|
作爲請求結果,移到下一個條目 |
|
移除在DatabasePrepare()中創建的請求 |
|
開始事務執行 |
|
完成事務執行 |
|
回滾事務 |
|
獲取請求中的字段數 |
|
按索引獲取字段名 |
|
按索引獲取字段類型 |
|
獲取字段大小(以字節爲單位) |
|
從當前記錄中獲取作爲字符串的字段值 |
|
從當前記錄中獲取int類型的值 |
|
從當前記錄中獲取long類型的值 |
|
從當前記錄中獲取double類型的值 |
|
從當前記錄中獲取作爲數組的字段值 |