- Oracle Blockchain Platform 디지털 자산 에디션
- Wholesale Central Bank 디지털 통화 애플리케이션
- 도매 CBDC에 대한 Oracle Database 뷰 정의
도매 CBDC에 대한 Oracle Database 뷰 정의
서식 있는 이력 데이터베이스를 사용하여 계정 트랜잭션 이력을 검색하고 동일한 블록에서 발생하는 다중 트랜잭션에서 잘못된 잔액을 해결할 수 있습니다.
GetAccountTransactionHistoryWithFiltersFromRichHistDB
API를 사용하여 리치 기록 데이터베이스에서 계정 트랜잭션 기록을 인출할 수 있습니다. custom_endpoint
및 bearer_token
매개변수를 메소드에 전달하면 풍부한 내역 데이터베이스 또는 상태 데이터베이스에서 계정 트랜잭션 내역이 검색됩니다.
리치 내역 데이터베이스에서 트랜잭션 내역을 검색하려면 ORDS(Oracle REST Data Services) 및 OAuth가 사용으로 설정된 Oracle Autonomous Database를 실행해야 합니다.
- 리치 내역 데이터베이스를 사용 및 구성합니다.For more information, see Enable and Configure the Rich History Database in Using Oracle Blockchain Platform.
- 리치 기록 데이터베이스에 쓰려는 체인 코드 데이터가 포함된 채널에서 리치 기록을 사용으로 설정합니다. 자세한 내용은 Oracle Blockchain Platform 사용의 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
서식 있는 기록 데이터베이스에서 트랜잭션 세부정보를 인출할 체인 코드의 이름입니다. 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>
는 뷰 및 ORDS 끝점을 생성하는 데 필요한 권한이 있어야 하는 리치 내역 데이터베이스에 대한 인증서입니다.bash
인터페이스의 제한 사항으로 인해 사용자 이름과 암호는 작은 따옴표(')로 묶어야 합니다.명령이 실행되면 다음 프롬프트가 표시됩니다.-
Do you want to create the View and ORDS Endpoint? (y/n)
- y를 입력하여 뷰와 끝점을 생성합니다. 뷰와 끝점을 이미 생성한 경우 n을 입력합니다.
-
Please select the language of your chaincode? (TS/GO)
- 이전에 y를 입력한 경우 TypeScript의 경우 TS를 입력하고 이동의 경우 GO를 입력합니다.
-
Do you want to generate ORDS Endpoint URL and Bearer Token? (y/n)
y
를 입력하여 끝점 인증서를 생성합니다. 그렇지 않은 경우n
을 입력합니다.
-
다음 오류가 표시될 수 있습니다.
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) : Using SQL Developer을 참조하십시오.