lss-server-php:db-datastructure-sqlite
Различия
Показаны различия между двумя версиями страницы.
| Предыдущая версия справа и слеваПредыдущая версияСледующая версия | Предыдущая версия | ||
| lss-server-php:db-datastructure-sqlite [2026/06/15 16:14] – [содержимое скрипта инициализации содержимого системных таблиц] madmin | lss-server-php:db-datastructure-sqlite [2026/06/15 16:28] (текущий) – [SQlite - требования к структуре БД] madmin | ||
|---|---|---|---|
| Строка 1: | Строка 1: | ||
| ====== SQlite - требования к структуре БД ====== | ====== SQlite - требования к структуре БД ====== | ||
| + | В настоящий момент полноценно реализована поддержка серверов PostgreSql и SQlite. В этом документе описаны требования к **SQlite**, а для PostgreSql требования можно посмотреть здесь: [[db-datastructure-postgresql]] | ||
| + | |||
| ===== Создание и инициализация системных таблиц ===== | ===== Создание и инициализация системных таблиц ===== | ||
| Для корректной работы LSS сервера в базе данных должны присутствовать системные таблицы: | Для корректной работы LSS сервера в базе данных должны присутствовать системные таблицы: | ||
| Строка 202: | Строка 204: | ||
| ===== Создание структуры БД для пользовательских таблиц ===== | ===== Создание структуры БД для пользовательских таблиц ===== | ||
| Вот пример скрипта создания пользовательских таблиц из тестового примера: | Вот пример скрипта создания пользовательских таблиц из тестового примера: | ||
| + | ==== содержимое скрипта ==== | ||
| + | < | ||
| + | -- роль доступа | ||
| + | create table " | ||
| + | " | ||
| + | " | ||
| + | " | ||
| + | ); | ||
| + | create unique index " | ||
| + | create unique index " | ||
| + | |||
| + | -- пользователь системы | ||
| + | create table " | ||
| + | " | ||
| + | " | ||
| + | " | ||
| + | " | ||
| + | " | ||
| + | ); | ||
| + | create index " | ||
| + | create unique index " | ||
| + | |||
| + | -- цех | ||
| + | create table " | ||
| + | " | ||
| + | " | ||
| + | ); | ||
| + | create unique index " | ||
| + | |||
| + | -- участок | ||
| + | create table " | ||
| + | " | ||
| + | " | ||
| + | " | ||
| + | ); | ||
| + | create index " | ||
| + | create unique index " | ||
| + | |||
| + | -- тип оборудования | ||
| + | create table " | ||
| + | " | ||
| + | " | ||
| + | ); | ||
| + | create unique index " | ||
| + | |||
| + | -- состояние оборудования | ||
| + | create table " | ||
| + | " | ||
| + | " | ||
| + | ); | ||
| + | create unique index " | ||
| + | |||
| + | -- вид ремонта | ||
| + | create table " | ||
| + | " | ||
| + | " | ||
| + | " | ||
| + | ); | ||
| + | create unique index " | ||
| + | |||
| + | -- паспорт оборудования | ||
| + | create table " | ||
| + | " | ||
| + | " | ||
| + | " | ||
| + | " | ||
| + | " | ||
| + | " | ||
| + | " | ||
| + | " | ||
| + | " | ||
| + | ); | ||
| + | create index " | ||
| + | create index " | ||
| + | create index " | ||
| + | create index " | ||
| + | create unique index " | ||
| + | |||
| + | -- ремонт оборудования | ||
| + | create table " | ||
| + | " | ||
| + | " | ||
| + | " | ||
| + | " | ||
| + | " | ||
| + | ); | ||
| + | create index " | ||
| + | create index " | ||
| + | |||
| + | -- нормы ремонтов | ||
| + | create table " | ||
| + | " | ||
| + | " | ||
| + | " | ||
| + | " | ||
| + | ); | ||
| + | create index " | ||
| + | create index " | ||
| + | create unique index " | ||
| + | </ | ||
| ==== важные замечания ==== | ==== важные замечания ==== | ||
| * имена таблиц и полей - маленькие буквы английского алфавита или цифры | * имена таблиц и полей - маленькие буквы английского алфавита или цифры | ||
| Строка 211: | Строка 313: | ||
| * для наглядности имя ссылки в конце содержит сочетание символов ' | * для наглядности имя ссылки в конце содержит сочетание символов ' | ||
| * на уровне базы данных ссылки объявляются как **nullable** | * на уровне базы данных ссылки объявляются как **nullable** | ||
| - | * на примере таблицы **machinerepair**, | + | * на примере таблицы **machinerepair**, |
| * по каждой ссылке делаем индекс, | * по каждой ссылке делаем индекс, | ||
| * соглашения на объявление полей **datetime**: | * соглашения на объявление полей **datetime**: | ||
| - | | + | * обычно поля для хранения даты и времени nullable, без привязки к часовым поясам |
| - | | + | |
| < | < | ||
| - | " | + | " |
| - | " | + | " |
| </ | </ | ||
| * соглашения на **nullable** полей: | * соглашения на **nullable** полей: | ||
lss-server-php/db-datastructure-sqlite.1781529249.txt.gz · Последнее изменение: 2026/06/15 16:14 — madmin
