ORACLE: Create block chain table and insert into data

52 篇文章 1 订阅
22 篇文章 0 订阅

Create Block Chain table 

sqlplus / as sysdba <<EOF
set echo on;
set feedback on;
select to_char(sysdate,'yyyy-mm-dd hh24:mi:ss') from dual;
col name form a20;
select inst_id,name,open_mode from gv\$pdbs where name='${tpdb}';
alter session set container=${tpdb};
show con_name;
CREATE BLOCKCHAIN TABLE items (ITEMID NUMBER, PRICE NUMBER(2,0), QTY NUMBER, DESCRIPTION VARCHAR2(60)) NO DROP UNTIL 25 DAYS IDLE NO DELETE LOCKED HASHING USING "SHA2_512" VERSION "v1";

Note: No allow to create blockchain table in CDB$ROOT
Commit;
exit;
EOF

Insert data into BlockChain table

rec_number=100
echo "Insert 100 rows"

sqlplus / as sysdba <<EOF
set echo on;
select to_char(sysdate,'yyyy-mm-dd hh24:mi:ss') from dual;
alter session set container=${tpdb};
declare
begin
for i in 1..${rec_number}
loop
insert into items values (1, 35, 5, 'Apple');
commit;
end loop;
end;
/
select count(*) from items;
exit;
EOF

Query Hash value

select itemid, SUBSTR(ORABCTAB_HASH$,1,10) from items;

Compare the speed of common table and blockchain table:

Blockchain table

Common table

create blockchain table bc_tab2(id number,name varchar2(10), price number (  6,2))
 no drop until 31 days idle
 no delete locked
 hashing using "SHA2_512" version "v1";

SQL> set timing on
SQL> begin
for i in 1..10000 loop
 insert into bc_tab2 values(i,'anbob'||i,100);
 commit;
end loop;
 end;
 /
PL/SQL procedure successfully completed.
Elapsed: 00:00:13.26

create table tab2 (id number,name varchar2(10), price number ( 6,2));

SQL> begin
for i in 1..10000 loop
 insert into tab2 values(i,'anbob'||i,100);
 commit;
end loop;
 end;
 /
PL/SQL procedure successfully completed.
Elapsed: 00:00:00.86

 

 

Drop blockchain table:

BlockChain table

Command

Empty data
SQL> create blockchain table bc_table( 
2    id	 number primary key,
3    name varchar2(20),
4    join_date	date)
5    NO DROP UNTIL 365 DAYS IDLE
6    NO DELETE LOCKED
7  HASHING USING "SHA2_512" VERSION "v1";  

Table created.

SQL> drop table enmotech;

Table dropped.
With dataDrop PDB/CDB

 

 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值