53 lines
1.9 KiB
Transact-SQL
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
|