[]
CREATE TABLE IF NOT EXISTS documents (
id TEXT PRIMARY KEY,
type TEXT NOT NULL,
version INT NOT NULL,
snapshot_version INT NOT NULL
);
CREATE TABLE IF NOT EXISTS operations (
doc_id TEXT NOT NULL,
version INTEGER NOT NULL,
operation TEXT NOT NULL,
PRIMARY KEY (doc_id, version),
FOREIGN KEY (doc_id) REFERENCES documents (id) ON DELETE CASCADE
);
CREATE TABLE IF NOT EXISTS snapshot_fragments (
doc_id TEXT NOT NULL REFERENCES documents(id) ON DELETE CASCADE,
fragment_id TEXT NOT NULL,
data TEXT NOT NULL,
PRIMARY KEY (doc_id, fragment_id)
);CREATE TABLE IF NOT EXISTS documents (
id TEXT PRIMARY KEY,
type TEXT NOT NULL,
version INT NOT NULL,
snapshot_version INT NOT NULL
);
CREATE TABLE IF NOT EXISTS operations (
doc_id TEXT NOT NULL,
version INTEGER NOT NULL,
operation TEXT NOT NULL,
PRIMARY KEY (doc_id, version),
FOREIGN KEY (doc_id) REFERENCES documents (id) ON DELETE CASCADE
);
CREATE TABLE IF NOT EXISTS snapshot_fragments (
doc_id TEXT NOT NULL REFERENCES documents(id) ON DELETE CASCADE,
fragment_id TEXT NOT NULL,
data TEXT NOT NULL,
PRIMARY KEY (doc_id, fragment_id)
);
테이블 이름 | 컬럼 이름 | 데이터 타입 | 설명 |
|---|---|---|---|
documents | id | TEXT | 문서의 고유 식별자 |
version | INTEGER | 문서의 버전 번호 | |
snapshotVersion | INTEGER | 스냅샷 버전 번호 | |
type | TEXT | 문서 유형 | |
operations | doc_id | TEXT | 문서의 고유 식별자 |
version | INTEGER | 작업(operation)의 버전 | |
operation | TEXT | 작업과 관련된 데이터 | |
fragments | doc_id | TEXT | 문서의 고유 식별자 |
fragment_id | TEXT | 프래그먼트의 고유 식별자 | |
data | TEXT | 프래그먼트와 관련된 데이터 |