Files
DocumentServer-v-9.2.0/server/schema/mssql/createdb.sql
Yajbir Singh f1b860b25c
Some checks failed
check / markdownlint (push) Has been cancelled
check / spellchecker (push) Has been cancelled
updated
2025-12-11 19:03:17 +05:30

53 lines
1.9 KiB
Transact-SQL

-- Modified for SQL Server
-- Requires SQL Server 2016 (13.x) or newer
-- Features used:
-- - DROP TABLE IF EXISTS (SQL Server 2016+)
-- - Data compression (SQL Server 2008 R2+)
-- CREATE DATABASE onlyoffice;
-- GO
-- USE onlyoffice;
-- GO
-- SQL Server Configuration Parameters
-- ANSI_NULLS ON: Enables ISO standard NULL handling behavior
-- When ON, comparison of NULL values evaluates to UNKNOWN instead of TRUE or FALSE
-- QUOTED_IDENTIFIER ON: Enables standard SQL string delimiter behavior
-- When ON, double quotes can be used to delimit identifiers and literal strings must use single quotes
-- ANSI_PADDING ON: Controls how column stores values shorter than the defined size
-- When ON, trailing blanks in char data and trailing zeros in binary data are preserved
SET ANSI_NULLS ON;
SET QUOTED_IDENTIFIER ON;
SET ANSI_PADDING ON;
GO
CREATE TABLE doc_changes(
tenant NVARCHAR(255) NOT NULL,
id NVARCHAR(255) NOT NULL,
change_id int NOT NULL CHECK(change_id BETWEEN 0 AND 4294967295),
user_id NVARCHAR(255) NOT NULL,
user_id_original NVARCHAR(255) NOT NULL,
user_name NVARCHAR(255) NOT NULL,
change_data NVARCHAR(MAX) NOT NULL,
change_date DATETIME NOT NULL,
PRIMARY KEY NONCLUSTERED (tenant, id, change_id)
) WITH (DATA_COMPRESSION = PAGE);
CREATE TABLE task_result (
tenant NVARCHAR(255) NOT NULL,
id NVARCHAR(255) NOT NULL,
status SMALLINT NOT NULL,
status_info INT NOT NULL,
created_at DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP,
last_open_date DATETIME NOT NULL,
user_index int NOT NULL DEFAULT 1 CHECK(user_index BETWEEN 0 AND 4294967295),
change_id int NOT NULL DEFAULT 0 CHECK(change_id BETWEEN 0 AND 4294967295),
callback NVARCHAR(MAX) NOT NULL,
baseurl NVARCHAR(MAX) NOT NULL,
password NVARCHAR(MAX) NULL,
additional NVARCHAR(MAX) NULL,
PRIMARY KEY NONCLUSTERED (tenant, id)
) WITH (DATA_COMPRESSION = PAGE);
GO