Files
oceanbase/tools/deploy/mysql_test/t/fin.test
2023-11-20 08:32:44 +00:00

225 lines
11 KiB
Plaintext

--disable_query_log
set @@session.explicit_defaults_for_timestamp=off;
--enable_query_log
# owner: bin.lb
# owner group: SQL2
# tags: ddl
# description:
#
--disable_warnings
drop table if exists fin_influx_extension;
drop table if exists fin_influx_inst;
drop table if exists fin_settle_serial_map;
drop table if exists fin_influx_terminal;
drop table if exists fin_info_transaction;
drop table if exists fin_influx_terminal_unique;
drop table if exists fin_request_no_unique;
drop table if exists fin_settle_serial_unique;
drop table if exists fin_influx_transaction;
drop table if exists idx1_fin_influx_transaction;
drop table if exists fin_influx_payer;
drop table if exists idx1_fin_influx_payer;
drop table if exists idx2_fin_influx_payer;
--enable_warnings
## table 1
create table fin_influx_extension(INFLUX_ID varchar(64) primary key, EXTENSION1 varchar(32), EXTENSION2 varchar(32), REQ_EXTENSION varchar(4000), RES_EXTENSION varchar(4000), GMT_CREATE datetime(6), GMT_MODIFIED datetime(6));
insert into fin_influx_extension(INFLUX_ID, REQ_EXTENSION, RES_EXTENSION, GMT_CREATE, GMT_MODIFIED) values('0001','req_1', 'res_1', '2012-12-20 12:00', '2013-1-20 13:00');
select INFLUX_ID,EXTENSION1,EXTENSION2,REQ_EXTENSION,RES_EXTENSION,GMT_CREATE,GMT_MODIFIED from fin_influx_extension where INFLUX_ID = '0001';
## table 2
create table fin_influx_inst(INFLUX_ID varchar(64) primary key, INST_ID varchar(32), INST_SERIAL_NO varchar(32), INST_REF_NO varchar(32), RESP_AMOUNT int, RESP_CURRENCY char(3), INST_RESULT_CODE varchar(16), INST_RESULT_DESCRIPTION varchar(256), GMT_SETTLE datetime(6), GMT_RESP datetime(6), GMT_CREATE datetime(6), GMT_MODIFIED datetime(6));
insert into fin_influx_inst values('0001', '00001', 'serial_no', 'ref_no', 100, '123', 'result_code', 'result_des', '2013-1-20 13:00','2013-1-20 13:00','2013-1-20 13:00','2013-1-20 13:00');
SELECT INFLUX_ID, INST_ID, INST_SERIAL_NO, INST_REF_NO, RESP_AMOUNT, RESP_CURRENCY, INST_RESULT_CODE, INST_RESULT_DESCRIPTION, GMT_SETTLE, GMT_RESP, GMT_CREATE, GMT_MODIFIED FROM fin_influx_inst WHERE INFLUX_ID = '0001';
## table 3 fin_settle_serial_map
create table fin_settle_serial_map(INFLUX_ID varchar(64) primary key, SETTLE_SERIAL_NO varchar(64), INST_ID varchar(32), FINANCE_EXCHANGE_CODE varchar(32), GMT_CREATE datetime(6), GMT_MODIFIED datetime(6));
SELECT FINANCE_EXCHANGE_CODE, SETTLE_SERIAL_NO, INST_ID, INFLUX_ID, GMT_CREATE, GMT_MODIFIED FROM fin_settle_serial_map WHERE SETTLE_SERIAL_NO = '0001' AND FINANCE_EXCHANGE_CODE = '0001';
SELECT FINANCE_EXCHANGE_CODE, SETTLE_SERIAL_NO, INST_ID, INFLUX_ID, GMT_CREATE, GMT_MODIFIED FROM fin_settle_serial_map WHERE SETTLE_SERIAL_NO = '0001';
SELECT INFLUX_ID FROM fin_settle_serial_map WHERE FINANCE_EXCHANGE_CODE IN ('EXCHANGECODES') AND SETTLE_SERIAL_NO = '0001';
## table 4 fin_influx_terminal
create table fin_influx_terminal(influx_id varchar(64) primary key, inst_id varchar(32), inst_merchant_no varchar(32), inst_terminal_no varchar(32), term_batch_no varchar(6), term_trace_no varchar(6), rrn varchar(12), auth_code varchar(6), gmt_create datetime, gmt_modified datetime, finance_exchange_code varchar(32), inst_account_no varchar(32), exchange_amount int, exchange_currency char(3), extension varchar(4000));
select influx_id, inst_id, inst_merchant_no, inst_terminal_no, term_batch_no, term_trace_no, rrn, auth_code, gmt_create, gmt_modified, finance_exchange_code, inst_account_no, exchange_amount, exchange_currency, extension from fin_influx_terminal where influx_id='0001' and term_trace_no = '123';
## table 5 fin_info_transaction
create table fin_info_transaction(
info_id varchar(64) primary key,
inst_id varchar(32),
business_code varchar(16),
sub_business_code varchar(16),
exchange_type varchar(32),
finance_exchange_code varchar(32),
exchange_status varchar(8),
request_info varchar(4000),
response_info varchar(4000),
gmt_send datetime,
gmt_res datetime,
gmt_create datetime,
gmt_modified datetime,
result_code varchar(16),
result_description varchar(256),
inst_result_code varchar(16),
inst_result_description varchar(256)
);
# select using primary key
## table 6 fin_influx_terminal_unique
create table fin_influx_terminal_unique(
inst_id varchar(32),
inst_merchant_no varchar(32),
inst_terminal_no varchar(32),
term_batch_no varchar(6),
term_trace_no varchar(6),
gmt_create datetime,
gmt_modified datetime,
primary key(inst_id, term_batch_no, inst_merchant_no, term_trace_no, inst_terminal_no)
);
#selects to add
## table 7 fin_request_no_unique
create table fin_request_no_unique(
request_identify varchar(32),
request_biz_no varchar(64),
gmt_create datetime,
gmt_modified datetime,
influx_id varchar(64),
primary key(request_identify, request_biz_no)
);
# selects to add
## table 8 fin_settle_serial_unique
create table fin_settle_serial_unique(
finance_exchange_code varchar(32),
settle_serial_no varchar(64),
gmt_create datetime,
gmt_modified datetime,
primary key(finance_exchange_code, settle_serial_no)
);
## table 9 fin_influx_transaction
create table fin_influx_transaction(
influx_id varchar(64) primary key,
org_influx_id varchar(64),
inst_id varchar(32),
business_code varchar(16),
sub_business_code varchar(16),
exchange_type varchar(32),
finance_exchange_code varchar(32),
settle_serial_no varchar(64),
payer_account_no varchar(32),
exchange_amount int,
exchange_currency char(3),
account_amount int,
account_currency char(3),
settle_amount int,
settle_currency char(3),
settle_status varchar(8),
exchange_status varchar(8),
result_code varchar(16),
result_description varchar(256),
recover_flag char(1),
recon_flag char(1),
negative_flag char(1),
negative_exchange_type varchar(16),
request_identify varchar(32),
request_biz_no varchar(64),
pay_unique_no varchar(64),
pay_channel_api varchar(32),
inst_channel_api varchar(32),
clear_channel varchar(32),
biz_identity varchar(32),
gmt_submit datetime,
gmt_resp datetime,
gmt_settle datetime,
gmt_create datetime,
gmt_modified datetime
);
select influx_id, org_influx_id, inst_id, business_code, sub_business_code, exchange_type, finance_exchange_code, settle_serial_no, payer_account_no, exchange_amount, exchange_currency, account_amount, account_currency, settle_amount, settle_currency, settle_status, exchange_status, result_code, result_description, recover_flag, recon_flag, negative_flag, negative_exchange_type, request_identify, request_biz_no, pay_unique_no, pay_channel_api, inst_channel_api, clear_channel, biz_identity, gmt_submit, gmt_resp, gmt_settle, gmt_create, gmt_modified from fin_influx_transaction where influx_id = '0001';
select influx_id, org_influx_id, inst_id, business_code, sub_business_code, exchange_type, finance_exchange_code, settle_serial_no, payer_account_no, exchange_amount, exchange_currency, account_amount, account_currency, settle_amount, settle_currency, settle_status, exchange_status, result_code, result_description, recover_flag, recon_flag, negative_flag, negative_exchange_type, request_identify, request_biz_no, pay_unique_no, pay_channel_api, inst_channel_api, clear_channel, biz_identity, gmt_submit, gmt_resp, gmt_settle, gmt_create, gmt_modified from fin_influx_transaction where finance_exchange_code = 'ss' and settle_serial_no = '00001';
select influx_id, org_influx_id, inst_id, business_code, sub_business_code, exchange_type, finance_exchange_code, settle_serial_no, payer_account_no, exchange_amount, exchange_currency, account_amount, account_currency, settle_amount, settle_currency, settle_status, exchange_status, result_code, result_description, recover_flag, recon_flag, negative_flag, negative_exchange_type, request_identify, request_biz_no, pay_unique_no, pay_channel_api, inst_channel_api, clear_channel, biz_identity, gmt_submit, gmt_resp, gmt_settle, gmt_create, gmt_modified from fin_influx_transaction where inst_channel_api = 'api' and settle_serial_no = '00001';
### table 10 idx1_fin_influx_transaction
create table idx1_fin_influx_transaction(
settle_serial_no varchar(64),
finance_exchange_code varchar(32),
influx_id varchar(64),
inst_channel_api varchar(32),
primary key(settle_serial_no,finance_exchange_code,influx_id)
);
select * from idx1_fin_influx_transaction where finance_exchange_code = 'sss' and settle_serial_no = 'ss';
select * from idx1_fin_influx_transaction where inst_channel_api = 'ss' and settle_serial_no = 'ss';
### table 11 fin_influx_payer
create table fin_influx_payer(
influx_id varchar(64) ,
payer_account_no varchar(32),
payer_name varchar(32),
inst_account_no varchar(32),
inst_account_name varchar(128),
card_type varchar(16),
card_index varchar(32),
issuer varchar(32),
agreement_no varchar(100),
certificate_type varchar(64),
certificate_no varchar(32),
mobile_phone varchar(16),
pay_tool varchar(16),
bill_no varchar(32),
bill_type varchar(8),
gmt_create datetime,
gmt_modified datetime,
primary key(inst_account_no, gmt_create, influx_id)
);
select influx_id, payer_account_no, payer_name, inst_account_no, inst_account_name, card_type, card_index, issuer, agreement_no, certificate_type, certificate_no, mobile_phone, pay_tool, bill_no, bill_type, gmt_create, gmt_modified from fin_influx_payer where influx_id='0001';
select influx_id, payer_account_no, payer_name, inst_account_no, inst_account_name, card_type, card_index, issuer, agreement_no, certificate_type, certificate_no, mobile_phone, pay_tool, bill_no, bill_type, gmt_create, gmt_modified from fin_influx_payer where bill_no='sss';
select influx_id, payer_account_no, payer_name, inst_account_no, inst_account_name, card_type, card_index, issuer, agreement_no, certificate_type, certificate_no, mobile_phone, pay_tool, bill_no, bill_type, gmt_create, gmt_modified from fin_influx_payer where inst_account_no='0001' and gmt_create>='2012-10-1 23:00:00' and gmt_create<='2012-12-23 23:00:00';
## table 12 idx1_fin_influx_payer
create table idx1_fin_influx_payer (
bill_no varchar(32),
inst_account_no varchar(32),
gmt_create datetime,
influx_id varchar(64),
virtual_col1 int,
primary key(bill_no,inst_account_no,gmt_create,influx_id)
);
# bill_no+inst_account_no+gmt_create+influx_id+influx_id
## table 13 idx2_fin_influx_payer
create table idx2_fin_influx_payer(
influx_id varchar(64),
inst_account_no varchar(32),
gmt_create datetime,
virtual_col1 int,
a int,
primary key(influx_id,inst_account_no,gmt_create,virtual_col1)
);
# influx_id+inst_account_no+gmt_create+inlux_id主键 ,满足fin_influx_payer的第3种where influx_id=?查询
drop table fin_influx_extension;
drop table fin_influx_inst;
drop table fin_settle_serial_map;
drop table fin_influx_terminal;
drop table fin_info_transaction;
drop table fin_influx_terminal_unique;
drop table fin_request_no_unique;
drop table fin_settle_serial_unique;
drop table fin_influx_transaction;
drop table idx1_fin_influx_transaction;
drop table fin_influx_payer;
drop table idx1_fin_influx_payer;
drop table idx2_fin_influx_payer;