账本数据库的函数
get_dn_hist_relhash(text, text)
描述:返回指定防篡改用户表的表级数据hash值。该函数仅供分布式使用。
参数类型:text
返回值类型:hash16
-
描述:校验指定防篡改用户表的表级数据hash值与其对应历史表hash一致性。
参数类型:text
返回值类型:boolean
示例:
1、创建schema和测试表。
CREATE SCHEMA ledgernsp WITH BLOCKCHAIN; CREATE TABLE ledgernsp.tab(a int, b text);
2、插入数据。
INSERT INTO ledgernsp.tab values(generate_series(1, 10000), 'test');
3、调用函数。
SELECT ledger_hist_check('ledgernsp','tab');
返回结果为:
ledger_hist_check ------------------- t (1 row)
ledger_hist_repair(text, text)
描述:修复指定防篡改用户表对应的历史表hash值,使之与用户表hash一致,返回hash差值。
参数类型:text
返回值类型:hash16
示例:
SELECT ledger_hist_repair('ledgernsp','tab');
返回结果为:
ledger_hist_repair -------------------- 0000000000000000 (1 row)
ledger_hist_archive(text, text)
描述:归档指定防篡改用户表对应的历史表至审计日志目录中hist_back文件夹下。
参数类型:text
返回值类型:boolean
示例:
SELECT ledger_hist_archive('ledgernsp','tab');
返回结果为:
ledger_hist_archive --------------------- t (1 row)
ledger_gchain_check(text, text)
描述:校验指定防篡改用户表对应的历史表hash与全局历史表对应的relhash一致性。
参数类型:text
返回值类型:boolean
示例:
SELECT ledger_gchain_check('ledgernsp','tab');
返回结果为:
ledger_gchain_check --------------------- t (1 row)
ledger_gchain_repair(text, text)
描述:修复验指定防篡改用户表在全局历史表中的relhash,使之与其历史表hash一致,返回hash差值。
参数类型:text
返回值类型:hash16
示例:
SELECT ledger_gchain_repair('ledgernsp','tab');
返回结果为:
ledger_gchain_repair ---------------------- da30c1260af5be50 (1 row)
-
描述:归档全局历史表至审计日志目录中hist_back文件夹下。
参数类型:void
返回值类型:boolean
示例:
SELECT ledger_gchain_archive();
返回结果为:
ledger_gchain_archive --------------------- t (1 row)
hash16in(cstring)
描述:将输入16进制字符串转化成内部hash16形式。
参数类型:cstring
返回值类型:hash16
hash16out(hash16)
描述:将内部hash16类型的数据转码转化为16进制cstring类型。
参数类型:hash16
返回值类型:cstring
hash32in(cstring)
描述:将输入16进制字符串(32个字符)转化成内部类型hash32形式。
参数类型:cstring
返回值类型:hash32
hash32out(hash32)
描述:将内部hash32类型的数据转码转化为16进制cstring类型。
参数类型:cstring
返回值类型:hash32