Skip to content

Database Schema

CREATE TABLE "grid" (
   ident TEXT PRIMARY KEY NOT NULL,
   size INTEGER NOT NULL,
   spacing REAL NOT NULL,
   lat0 REAL NOT NULL,
   lon0 REAL NOT NULL
, "image" BLOB)
CREATE TABLE grid_cells (
   grid_id TEXT REFERENCES grid(ident),
   lat REAL,
   lon REAL,
   value REAL,
   PRIMARY KEY (grid_id, lat, lon)
)
CREATE TABLE "machine" (
   ident TEXT PRIMARY KEY NOT NULL,
   name TEXT NOT NULL
)
CREATE TABLE "person" (
   ident TEXT PRIMARY KEY NOT NULL,
   family TEXT NOT NULL,
   personal TEXT NOT NULL,
   supervisor_id TEXT REFERENCES person(ident)
)
CREATE TABLE "rating" (
   person_id TEXT NOT NULL REFERENCES person(ident),
   machine_id TEXT NOT NULL REFERENCES machine(ident),
   certified INTEGER NOT NULL
)
CREATE TABLE "assay" (
   ident TEXT PRIMARY KEY NOT NULL,
   lat REAL NOT NULL REFERENCES grid_cells(lat),
   lon REAL NOT NULL REFERENCES grid_cells(lon),
   person_id TEXT NOT NULL REFERENCES person(ident),
   machine_id TEXT NOT NULL REFERENCES machine(ident),
   performed TEXT
)
CREATE TABLE assay_readings (
   assay_id TEXT REFERENCES assay(ident),
   reading_id INTEGER,
   contents TEXT,
   reading REAL,
   PRIMARY KEY (assay_id, reading_id)
)
CREATE TABLE "species" (
   reference TEXT NOT NULL,
   susc_locus INTEGER NOT NULL,
   susc_base TEXT NOT NULL
)
CREATE TABLE species_loci (
   ident INTEGER PRIMARY KEY,
   locus INTEGER
)
CREATE TABLE "specimen" (
   ident TEXT NOT NULL,
   lat REAL NOT NULL,
   lon REAL NOT NULL,
   genome TEXT NOT NULL,
   mass REAL NOT NULL,
   diameter REAL NOT NULL,
   collected TEXT,
   variety TEXT
)