eth-indexer/migrations/001_indexer_base.sql

80 lines
2.8 KiB
MySQL
Raw Permalink Normal View History

2024-06-10 09:36:26 +02:00
CREATE TABLE IF NOT EXISTS tx (
id INT GENERATED ALWAYS AS IDENTITY PRIMARY KEY,
tx_hash VARCHAR(66) NOT NULL UNIQUE,
block_number INT NOT NULL,
date_block TIMESTAMP NOT NULL,
success BOOLEAN NOT NULL
);
CREATE TABLE IF NOT EXISTS token_transfer (
id INT GENERATED ALWAYS AS IDENTITY PRIMARY KEY,
tx_id INT REFERENCES tx(id),
sender_address VARCHAR(42) NOT NULL,
recipient_address VARCHAR(42) NOT NULL,
contract_address VARCHAR(42) NOT NULL DEFAULT '0x0000000000000000000000000000000000000000',
2024-06-10 09:36:26 +02:00
transfer_value NUMERIC NOT NULL
);
CREATE TABLE IF NOT EXISTS token_mint (
id INT GENERATED ALWAYS AS IDENTITY PRIMARY KEY,
tx_id INT REFERENCES tx(id),
minter_address VARCHAR(42) NOT NULL,
recipient_address VARCHAR(42) NOT NULL,
contract_address VARCHAR(42) NOT NULL DEFAULT '0x0000000000000000000000000000000000000000',
2024-06-10 09:36:26 +02:00
mint_value NUMERIC NOT NULL
);
CREATE TABLE IF NOT EXISTS token_burn (
id INT GENERATED ALWAYS AS IDENTITY PRIMARY KEY,
tx_id INT REFERENCES tx(id),
burner_address VARCHAR(42) NOT NULL,
contract_address VARCHAR(42) NOT NULL DEFAULT '0x0000000000000000000000000000000000000000',
2024-06-10 09:36:26 +02:00
burn_value NUMERIC NOT NULL
);
CREATE TABLE IF NOT EXISTS faucet_give (
id INT GENERATED ALWAYS AS IDENTITY PRIMARY KEY,
tx_id INT REFERENCES tx(id),
token_address VARCHAR(42) NOT NULL,
recipient_address VARCHAR(42) NOT NULL,
contract_address VARCHAR(42) NOT NULL DEFAULT '0x0000000000000000000000000000000000000000',
2024-06-10 09:36:26 +02:00
give_value NUMERIC NOT NULL
);
CREATE TABLE IF NOT EXISTS pool_swap (
id INT GENERATED ALWAYS AS IDENTITY PRIMARY KEY,
tx_id INT REFERENCES tx(id),
initiator_address VARCHAR(42) NOT NULL,
token_in_address VARCHAR(42) NOT NULL,
token_out_address VARCHAR(42) NOT NULL,
in_value NUMERIC NOT NULL,
out_value NUMERIC NOT NULL,
contract_address VARCHAR(42) NOT NULL DEFAULT '0x0000000000000000000000000000000000000000',
2024-06-10 09:36:26 +02:00
fee NUMERIC NOT NULL
);
CREATE TABLE IF NOT EXISTS pool_deposit (
id INT GENERATED ALWAYS AS IDENTITY PRIMARY KEY,
tx_id INT REFERENCES tx(id),
initiator_address VARCHAR(42) NOT NULL,
token_in_address VARCHAR(42) NOT NULL,
contract_address VARCHAR(42) NOT NULL DEFAULT '0x0000000000000000000000000000000000000000',
2024-06-10 09:36:26 +02:00
in_value NUMERIC NOT NULL
);
CREATE TABLE IF NOT EXISTS tokens (
id INT GENERATED ALWAYS AS IDENTITY PRIMARY KEY,
contract_address VARCHAR(42) UNIQUE NOT NULL DEFAULT '0x0000000000000000000000000000000000000000',
2024-06-10 09:36:26 +02:00
token_name TEXT NOT NULL,
token_symbol TEXT NOT NULL,
token_decimals INT NOT NULL,
sink_address VARCHAR(42) NOT NULL DEFAULT '0x0000000000000000000000000000000000000000'
);
CREATE TABLE IF NOT EXISTS pools (
id INT GENERATED ALWAYS AS IDENTITY PRIMARY KEY,
contract_address VARCHAR(42) UNIQUE NOT NULL DEFAULT '0x0000000000000000000000000000000000000000',
pool_name TEXT NOT NULL,
pool_symbol TEXT NOT NULL
2024-06-10 09:36:26 +02:00
);