mirror of
https://gitlab.cern.ch/wotsubo/PSBoardDataBase.git
synced 2025-06-07 21:45:43 +09:00
178 lines
4.9 KiB
SQL
178 lines
4.9 KiB
SQL
CREATE TABLE versions (
|
|
converter TEXT,
|
|
converter_git TEXT
|
|
);
|
|
|
|
CREATE TABLE ps_boards (
|
|
id INTEGER NOT NULL PRIMARY KEY,
|
|
daughterboard_id INTEGER
|
|
);
|
|
|
|
CREATE TABLE qaqc_single_run_results (
|
|
id INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
|
|
runid INTEGER NOT NULL,
|
|
psboard_id INTEGER NOT NULL,
|
|
daughterboard_id INTEGER,
|
|
position INTEGER,
|
|
resistance_test_passed BOOLEAN NOT NULL,
|
|
qspip INTEGER,
|
|
recov INTEGER,
|
|
power INTEGER,
|
|
clock INTEGER,
|
|
asdtp INTEGER,
|
|
reset INTEGER,
|
|
qaqc_result INTEGER,
|
|
lvds_tx_skew REAL,
|
|
power_3v3d REAL,
|
|
power_3v3a REAL,
|
|
power_n3va REAL,
|
|
note TEXT,
|
|
is_slavelog_valid BOOLEAN,
|
|
is_slaveclocklog_valid BOOLEAN,
|
|
FOREIGN KEY("runid") REFERENCES "qaqc_runs"("id"),
|
|
FOREIGN KEY("psboard_id") REFERENCES "ps_boards"("id"),
|
|
FOREIGN KEY("position") REFERENCES "qaqc_positions"("id")
|
|
);
|
|
|
|
CREATE TABLE qaqc_runs (
|
|
id INTEGER NOT NULL PRIMARY KEY,
|
|
campaign_id REAL,
|
|
run_datetime DATETIME,
|
|
note TEXT,
|
|
shifter TEXT NOT NULL,
|
|
logfile TEXT,
|
|
shiftscript_ver TEXT,
|
|
FOREIGN KEY("campaign_id") REFERENCES "qaqc_campaigns"("id")
|
|
);
|
|
|
|
CREATE TABLE qaqc_dispatch (
|
|
id INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
|
|
qaqc_campaign_id INTEGER,
|
|
psb_id INTEGER,
|
|
source_place TEXT NOT NULL,
|
|
destination TEXT NOT NULL,
|
|
time DATETIME,
|
|
FOREIGN KEY("qaqc_campaign_id") REFERENCES "qaqc_campaigns"("id"),
|
|
FOREIGN KEY("psb_id") REFERENCES "ps_boards"("id")
|
|
);
|
|
|
|
CREATE TABLE qaqc_campaigns (
|
|
id REAL NOT NULL PRIMARY KEY,
|
|
start_date DATETIME NOT NULL,
|
|
end_date DATETIME NOT NULL,
|
|
note TEXT
|
|
);
|
|
|
|
CREATE TABLE qaqc_resistance_check (
|
|
id INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
|
|
psb_id INTEGER NOT NULL,
|
|
passed BOOLEAN,
|
|
FOREIGN KEY("psb_id") REFERENCES "ps_boards"("id")
|
|
);
|
|
|
|
CREATE TABLE qaqc_extra_run_results (
|
|
id INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
|
|
runid INTEGER,
|
|
psboard_id INTEGER NOT NULL,
|
|
position INTEGER,
|
|
num_tests INTEGER,
|
|
insufficient_reset_with_10 INTEGER,
|
|
reset_failed_though_reconfig_done INTEGER,
|
|
always_hit_flag_true INTEGER,
|
|
dac_is_0 INTEGER,
|
|
bcid_shift INTEGER,
|
|
efficiency_99percent INTEGER,
|
|
bcid_fail_111 INTEGER,
|
|
bcid_fail_000 INTEGER,
|
|
low_efficiency INTEGER,
|
|
bcid_fail INTEGER,
|
|
invalid_register_value INTEGER,
|
|
power_out_of_range INTEGER,
|
|
note TEXT,
|
|
is_slavelog_valid BOOLEAN,
|
|
FOREIGN KEY("runid") REFERENCES "qaqc_runs"("id"),
|
|
FOREIGN KEY("psboard_id") REFERENCES "ps_boards"("id"),
|
|
FOREIGN KEY("position") REFERENCES "qaqc_positions"("id")
|
|
);
|
|
|
|
-- TODO: add table for descriptions of each error?
|
|
|
|
CREATE TABLE qaqc_positions (
|
|
id INTEGER NOT NULL PRIMARY KEY,
|
|
name TEXT NOT NULL UNIQUE,
|
|
station INTEGER NOT NULL,
|
|
position INTEGER NOT NULL,
|
|
rising_ns NUMERIC NOT NULL
|
|
);
|
|
|
|
CREATE VIEW qaqc_single_run_table
|
|
AS
|
|
SELECT
|
|
ps_boards.id AS psboard_id,
|
|
qaqc_single_run_results.daughterboard_id,
|
|
qaqc_single_run_results.runid AS runid,
|
|
qaqc_runs.run_datetime AS run_timestamp,
|
|
qaqc_runs.shifter,
|
|
qaqc_runs.note AS run_note,
|
|
qaqc_positions.name as position,
|
|
qaqc_single_run_results.qspip,
|
|
qaqc_single_run_results.recov,
|
|
qaqc_single_run_results.power,
|
|
qaqc_single_run_results.clock,
|
|
qaqc_single_run_results.asdtp,
|
|
qaqc_single_run_results.reset,
|
|
qaqc_single_run_results.qaqc_result,
|
|
qaqc_single_run_results.lvds_tx_skew - qaqc_positions.rising_ns AS lvds_tx_skew,
|
|
qaqc_runs.shiftscript_ver,
|
|
qaqc_single_run_results.note AS result_note
|
|
FROM
|
|
ps_boards,
|
|
qaqc_single_run_results,
|
|
qaqc_positions,
|
|
qaqc_runs
|
|
WHERE
|
|
ps_boards.id = qaqc_single_run_results.psboard_id
|
|
AND qaqc_single_run_results.runid = qaqc_runs.id
|
|
AND qaqc_positions.id = qaqc_single_run_results.position
|
|
-- AND ps_boards.id = 356
|
|
ORDER BY
|
|
qaqc_runs.run_datetime ASC,
|
|
qaqc_positions.id;
|
|
|
|
CREATE VIEW qaqc_extra_run_table
|
|
AS
|
|
SELECT
|
|
ps_boards.id AS psboard_id,
|
|
qaqc_runs.id AS runid,
|
|
qaqc_runs.run_datetime AS run_timestamp,
|
|
qaqc_runs.shifter,
|
|
qaqc_runs.note AS run_note,
|
|
qaqc_positions.name as position,
|
|
qaqc_extra_run_results.insufficient_reset_with_10,
|
|
qaqc_extra_run_results.reset_failed_though_reconfig_done,
|
|
qaqc_extra_run_results.always_hit_flag_true,
|
|
qaqc_extra_run_results.dac_is_0,
|
|
qaqc_extra_run_results.efficiency_99percent,
|
|
qaqc_extra_run_results.bcid_shift,
|
|
qaqc_extra_run_results.bcid_fail_000,
|
|
qaqc_extra_run_results.bcid_fail_111,
|
|
qaqc_extra_run_results.low_efficiency,
|
|
qaqc_extra_run_results.bcid_fail,
|
|
qaqc_extra_run_results.power_out_of_range,
|
|
qaqc_extra_run_results.invalid_register_value,
|
|
qaqc_runs.shiftscript_ver,
|
|
qaqc_runs.shifter,
|
|
qaqc_extra_run_results.note AS result_note
|
|
FROM
|
|
ps_boards,
|
|
qaqc_extra_run_results,
|
|
qaqc_positions,
|
|
qaqc_runs
|
|
WHERE
|
|
ps_boards.id = qaqc_extra_run_results.psboard_id
|
|
AND qaqc_extra_run_results.runid = qaqc_runs.id
|
|
AND qaqc_positions.id = qaqc_extra_run_results.position
|
|
ORDER BY
|
|
qaqc_runs.id ASC,
|
|
qaqc_positions.id;
|
|
|