- Oracle Blockchain Platform 數位資產版
- Wholesale Central Bank 數位幣別應用程式
- Oracle Database 檢視批發 CBDC 的定義
Oracle Database 檢視批發 CBDC 的定義
您可以使用 RTF 歷史記錄資料庫來擷取科目交易歷史記錄,並解決在相同區塊中發生之多個交易中不正確的餘額。
您可以使用
GetAccountTransactionHistoryWithFiltersFromRichHistDB
API 從 RTF 歷史記錄資料庫擷取科目交易歷史記錄。當您將 custom_endpoint
和 bearer_token
參數傳遞至方法時,會從 RTF 歷史記錄資料庫或狀態資料庫擷取帳戶交易歷史記錄。
若要從 Rich History 資料庫擷取交易歷史記錄,您必須執行 Oracle Autonomous Database 並啟用 Oracle REST Data Services (ORDS) 和 OAuth。
- 啟用與設定 RTF 歷史記錄資料庫。如需詳細資訊,請參閱使用 Oracle Blockchain Platform 中的啟用和設定 Rich History 資料庫。
- 在含有要寫入豐富歷史記錄資料庫之鏈碼資料的通道上啟用豐富的歷史記錄。如需詳細資訊,請參閱 Using Oracle Blockchain Platform 中的 Configure the Channels that Write Data to the Rich History Database 。
- 下載並安裝 Node.js 版本 18 或更新版本。
- 在 Oracle Blockchain Platform 的數位資產頁面上,選取批發 CBDC 應用程式。
- 按一下下載資料庫檢視定義套裝程式。
- 擷取
WholesaleCBDCViewsPackage.zip
檔案。 - 瀏覽至
ORDSscript
資料夾,然後執行下列命令來安裝必要的相依性。npm install
- 編輯命令檔隨附的
.env
檔案,為您的環境進行設定。Oracle REST Data Services 端點使用下列一般格式。<base_URL>/<user_name>/<resource_link>
環境 / 組態類型 環境 / 組態變數 描述 範例 DB Connection
CONNECTION_STRING
資料庫的連線字串. CONNECTION_STRING="(description= (retry_count=20)(retry_delay=3)(address=(protocol=tcps)(port=1522) (host=adg.ap-sydney-1.example.com))(connect_data= (service_name=g536390e55ee33f4_db_high.adg.example.com))(security=(ssl_server_dn_match=yes)))"
View Configuration
VIEW_NAME
顯示帳戶交易明細的檢視名稱。這可以是與資料庫中現有資產不衝突的任何值。 VIEW_NAME="viewTest"
View Configuration
CHAINCODE_NAME
從 RTF 歷史記錄資料庫中擷取交易明細的鏈碼名稱。 CHAINCODE_NAME="BondMarketplace"
View Configuration
INSTANCE_NAME
部署鏈碼之執行處理的名稱。 INSTANCE_NAME="BondMarketplace"
View Configuration
CHANNEL_NAME
部署鏈碼之通道的名稱。 CHANNEL_NAME="default"
ORDS Endpoint Setup
MODULE_NAME
要使用的 ORDS 模組名稱。這可以是與資料庫中現有資產不衝突的任何值。 MODULE_NAME="demotest"
ORDS Endpoint Setup
BASE_PATH
ORDS URL 的基本路徑。這可以是與資料庫中現有資產不衝突的任何值。 BASE_PATH="demotest"
ORDS Endpoint Setup
PATTERN
ORDS URL 的樣式名稱。這可以是與資料庫中現有資產不衝突的任何值。 PATTERN="accountTransactionDetails"
ORDS Endpoint Setup
ITEMS_PER_PAGE
ORDS 查詢結果中每頁顯示的項目數目。這可以是與資料庫中現有資產不衝突的任何值。 ITEMS_PER_PAGE=120
ORDS REST Endpoint
ORDS_REST_BASE_URL
資料庫之 ORDS REST 端點的基礎 URL。 ORDS_REST_BASE_URL="https://g536390e55ee33f4_db_high.adg.ap-sydney-1.example.com"
Alias Configuration
ALIAS_NAME
用於取代 REST 端點 URL 中使用者名稱的別名。這可以是與資料庫中現有資產不衝突的任何值。 ALIAS_NAME="demotestAlias"
ORDS Role
ROLE_NAME
指派給使用者的 ORDS 角色。這可以是與資料庫中現有資產不衝突的任何值。 ROLE_NAME="demotest_role"
ORDS Privilege
PRIVILEGE_NAME
指派給使用者的 ORDS 權限。這可以是與資料庫中現有資產不衝突的任何值。 PRIVILEGE_NAME="demotest_priv"
ORDS Privilege
LABEL
ORDS 權限的標籤。這可以是與資料庫中現有資產不衝突的任何值。 LABEL="demotest_label"
ORDS Privilege
DESCRIPTION
ORDS 權限的描述。這可以是與資料庫中現有資產不衝突的任何值。 DESCRIPTION="demotest_description"
OAuth Configuration
CLIENT_NAME
用於 ORDS REST 端點之 OAuth 認證的從屬端名稱。這可以是與資料庫中現有資產不衝突的任何值。 CLIENT_NAME="demotest_client"
OAuth Configuration
OWNER
用於 ORDS REST 端點之 OAuth 認證的擁有者名稱。這可以是與資料庫中現有資產不衝突的任何值。 OWNER="demotest"
OAuth Configuration
DESCRIPTION
OAuth 組態的描述。這可以是與資料庫中現有資產不衝突的任何值。 DESCRIPTION="demotest_description"
OAuth Configuration
SUPPORT_EMAIL
OAuth 組態的支援電子郵件地址。這可以是與資料庫中現有資產不衝突的任何值。 SUPPORT_EMAIL="test@example.com"
分析檢視名稱包含在軟體程式碼中。帳戶檢視為
ACCOUNTS_MOD
。交易檢視為TRANSACTION_MOD
。帳戶交易檢視是ACCOUNTS_TRANSACTION_MOD
。 - 使用下列命令執行 ORDS 命令檔。
npm run start --username='<username>' --password='<password>'
在此範例中,
<username>
和<password>
是 Rich History 資料庫的證明資料,必須具備建立檢視和 ORDS 端點的必要權限。由於bash
介面的限制,使用者名稱和密碼必須以單引號 (') 括住。
您可能會看到下列錯誤。
Error: ORA-20049: Cannot alter the URL mapping while the schema is enabled. Try disabling the schema first.
發生此錯誤的原因是資料庫綱要已啟用,因此無法對應至 .env
檔案中指定的不同別名。
若要解決此行為,請完成下列步驟。
- 使用先前使用的相同別名,或檢查資料庫中的 REST 服務是否有綱要別名。
- 停用資料庫綱要,然後重新執行命令檔。如需詳細資訊,請參閱 Oracle REST Data Services (ORDS):使用 SQL Developer 。