Files
lucent-laravel/database/setup.sql
T

112 lines
2.4 KiB
SQL
Raw Normal View History

2026-01-14 16:26:53 +02:00
CREATE TABLE "channels" (
"id" TEXT NOT NULL,
"name" TEXT NOT NULL,
"locales" TEXT NOT NULL,
PRIMARY KEY("id")
)
CREATE TABLE "edges" (
"id" TEXT,
"from" TEXT NOT NULL,
"to" TEXT NOT NULL,
"field_id" TEXT NOT NULL,
"rank" INTEGER NOT NULL,
"locale" TEXT NOT NULL,
"mode" TEXT NOT NULL,
"" INTEGER,
UNIQUE("from","to","field_id","locale","mode"),
PRIMARY KEY("id")
)
CREATE TABLE "fields" (
"id" TEXT NOT NULL,
"name" TEXT NOT NULL,
"type" TEXT NOT NULL,
"props" TEXT NOT NULL,
"schema_id" TEXT NOT NULL,
"alias" TEXT NOT NULL,
"rank" INTEGER NOT NULL DEFAULT 0,
"translatable" INTEGER NOT NULL DEFAULT 0,
"help" TEXT NOT NULL DEFAULT "",
"required" INTEGER NOT NULL DEFAULT 0,
"readonly" INTEGER NOT NULL DEFAULT 0,
"hidden" INTEGER NOT NULL DEFAULT 0,
PRIMARY KEY("id")
)
CREATE TABLE "files" (
"id" TEXT NOT NULL,
"name" TEXT NOT NULL,
"size" INTEGER NOT NULL,
"width" INTEGER NOT NULL DEFAULT 0,
"height" INTEGER NOT NULL DEFAULT 0,
"mime" TEXT NOT NULL,
"checksum" TEXT NOT NULL,
"record_id" TEXT,
"is_shared" INTEGER NOT NULL DEFAULT 0,
PRIMARY KEY("id")
)
CREATE TABLE "records" (
"id" TEXT NOT NULL,
"schema_id" TEXT NOT NULL,
"created_at" TEXT NOT NULL,
"created_by" TEXT NOT NULL,
"published_at" TEXT,
"published_by" TEXT,
"trashed_at" TEXT,
"trashed_by" INTEGER,
"scheduled_at" TEXT,
"scheduled_by" TEXT,
"title_field_id" TEXT NOT NULL DEFAULT 'as',
PRIMARY KEY("id")
)
CREATE TABLE "records_data" (
"id" TEXT NOT NULL,
"locale" TEXT NOT NULL,
"value" TEXT NOT NULL,
"updated_at" TEXT NOT NULL,
"updated_by" TEXT NOT NULL,
"mode" TEXT NOT NULL,
"record_id" TEXT NOT NULL,
"field_id" TEXT NOT NULL,
PRIMARY KEY("id"),
UNIQUE("locale","mode","record_id","field_id")
)
CREATE TABLE "records_files" (
"id" TEXT NOT NULL,
"record_id" TEXT NOT NULL,
"file_id" TEXT NOT NULL,
"mode" TEXT NOT NULL,
"locale" TEXT NOT NULL,
"rank" INTEGER NOT NULL,
"field_id" TEXT NOT NULL,
PRIMARY KEY("id"),
UNIQUE("record_id","file_id","mode","locale")
)
CREATE TABLE "schemas" (
"id" TEXT NOT NULL,
"name" TEXT NOT NULL,
"revisions" INTEGER NOT NULL,
"alias" TEXT NOT NULL,
"title_id" TEXT NOT NULL,
PRIMARY KEY("id")
)
CREATE TABLE "users" (
"id" varchar NOT NULL,
"name" varchar,
"email" varchar NOT NULL,
"password" varchar,
"status" varchar NOT NULL,
"roles" TEXT NOT NULL,
"createdAt" varchar NOT NULL,
"updatedAt" varchar NOT NULL,
"loggedInAt" varchar,
"mailToken" varchar,
PRIMARY KEY("id")
)