SQLize
Online
/
PHPize Online
/
SQLtest Online
A
A
A
Share
Donate
Blog
Popular
Donate
A
A
A
Share
Blog
Popular
SQLize.online is a free online SQL environment for quickly running, experimenting with and sharing code.
You can run your SQL code on top of the most popular RDBMS including MySQL, MariaDB, SQLite, PostgreSQL, Oracle and Microsoft SQL Server.
SQL code:
Upload
Copy
Format
Clear
/*Создание СУБД с Отделом кадров сотрудников, пациентов, зданий и создание связей по направлением пациентов */ DROP DATABASE IF EXISTS mskpol; CREATE DATABASE IF NOT EXISTS mskpol; USE mskpol; -- Создание таблицы по пациентам -- DROP TABLE IF EXISTS patient; CREATE TABLE IF NOT EXISTS patient ( id serial PRIMARY KEY, id_patient bigint unsigned UNIQUE COMMENT 'ИД ЕМИАС', firstname_patient varchar(50) NOT NULL COMMENT ' Фамилия', lastname_patient varchar(50) NOT NULL COMMENT 'Имя', middlename_patient varchar (50) COMMENT 'Отчество', birthday DATE CHECK (birthday > '1900-01-01') COMMENT 'Дата рождения пациента', oms varchar (16) UNIQUE COMMENT 'ОМС', snils_patient varchar (11) UNIQUE COMMENT 'СНИЛС', number1_patient varchar (10) UNIQUE COMMENT 'Телефон 1', number2_patient varchar (10) UNIQUE COMMENT 'Телефон 2', number3_patient varchar (10) UNIQUE COMMENT 'Телефон 3', email varchar(120) UNIQUE COMMENT ' E-mail пациента' -- password_hash VARCHAR(100), -- 123456 => vzx;clvgkajrpo9udfxvsldkrn24l5456345t ) COMMENT 'Данные по пациентам'; -- Создание таблицы по штатному составу сотрудников -- DROP TABLE IF EXISTS shtat; CREATE TABLE IF NOT EXISTS shtat( id serial PRIMARY KEY, firstname_patient varchar(50) NOT NULL COMMENT 'Фамилия сотрудника', lastname_patient varchar(50) NOT NULL COMMENT 'Имя сотрудника', middlename_patient varchar (50) COMMENT 'Отчество сотрудника', birthday DATE CHECK (birthday > '1900-01-01') COMMENT 'День рождения сотрудника', number1_patient varchar (20) UNIQUE CHECK ( number1_patient regexp '[+]?[0-9]{1,3} ?\\(?[0-9]{3}\\)? ?[0-9]{2}[0-9 -]+[0-9]{2}' ) COMMENT '', number2_patient varchar (20) UNIQUE CHECK ( number2_patient regexp '[+]?[0-9]{1,3} ?\\(?[0-9]{3}\\)? ?[0-9]{2}[0-9 -]+[0-9]{2}' ) COMMENT '', number3_patient varchar (20) UNIQUE CHECK ( number3_patient regexp '[+]?[0-9]{1,3} ?\\(?[0-9]{3}\\)? ?[0-9]{2}[0-9 -]+[0-9]{2}' ) COMMENT '', snils varchar (20) UNIQUE CHECK ( snils regexp '[0-9]{3} ?\\(?[0-9]{3}\\)? ?[0-9]{3}[0-9 -]+[0-9]{3}+[0-9]{2}' ) COMMENT 'СНИЛС сотрудника', email varchar(120) UNIQUE COMMENT 'Email сотрудника', positions_id int, podrazdelenie_id int, stavka_id int, project_id int, FOREIGN key(positions_id) REFERENCES positions (id), FOREIGN key(podrazdelenie_id) REFERENCES podrazdelenie (id), FOREIGN key(project_id) REFERENCES project (id), FOREIGN key(stavka_id) REFERENCES stavka (id), job_is_active bit DEFAULT (0) -- password_hash VARCHAR(100), -- 123456 => vzx;clvgkajrpo9udfxvsldkrn24l5456345t ) COMMENT 'Штат сотрудников'; CREATE TABLE IF NOT EXISTS podrazdelenie ( id INT PRIMARY KEY AUTO_INCREMENT, name_podrazdelenie varchar(200) NOT NULL COMMENT 'Наименование подразделения' ) COMMENT 'Подразделение'; CREATE TABLE IF NOT EXISTS positions ( id INT PRIMARY KEY AUTO_INCREMENT, name_positions varchar(200) NOT NULL COMMENT 'Наименование должности' ) COMMENT 'Должность'; CREATE TABLE IF NOT EXISTS stavka ( id INT PRIMARY KEY AUTO_INCREMENT, name_stavka tinyint unsigned NOT NULL COMMENT 'Ставки МО' ) COMMENT 'Ставка'; -- Информация по медицинсим организациям -- CREATE TABLE IF NOT EXISTS medac( id serial PRIMARY KEY, kod_org_mgfoms int unsigned UNIQUE COMMENT 'Код организации без 77', kod_org_mgfoms_2 int unsigned UNIQUE COMMENT 'Код организации полный', org_kr varchar(200) COMMENT 'Наименование организации коротко', org_poln text COMMENT 'Наименование организации полное' ) COMMENT 'Медицинские организации'; -- информация по виду проектов в МО -- CREATE TABLE IF NOT EXISTS project ( id INT PRIMARY KEY AUTO_INCREMENT, name_poject char(20) NOT NULL COMMENT 'Проекты МО' ) COMMENT 'Проекты и направления'; -- информация по льготному обеспечению и виду -- CREATE TABLE IF NOT EXISTS dlo ( id INT PRIMARY KEY AUTO_INCREMENT, id_kod_dlo INT COMMENT 'Код дло', name_dlo char(235) COMMENT 'Расшифровка льготной категории' ) COMMENT 'Льготные категории пациентов'; -- база данных по МКБ10 -- DROP TABLE IF EXISTS mkb10; CREATE TABLE IF NOT EXISTS mkb10 ( id serial PRIMARY KEY, mkb10_ds varchar(5) COMMENT 'МКБ10 Диагноз', mkb10_name varchar (200) COMMENT 'МКБ10 расшифровка диагноза', mkb10_rod_id int COMMENT 'МКБ10 Родитель диагноза' ) COMMENT 'МКБ10 классификатор'; CREATE TABLE IF NOT EXISTS mkb10_2( id serial PRIMARY KEY, mkb10_rod varchar (8) COMMENT 'МКБ10 родитель' ) COMMENT 'МКБ10 родитель диагноза'; -- Учет направлений пациентов от мед.работников - организация - вид направление - полис омс пациента - фио - мкб10 -- DROP TABLE IF EXISTS napravlenie; CREATE TABLE IF NOT EXISTS napravlenie ( id serial PRIMARY KEY, adder_at datetime DEFAULT CURRENT_TIMESTAMP COMMENT 'Добавление в БД', oms_id int COMMENT 'ОМС пациента', fyrstname_id int COMMENT 'Фамилия пациента', namber_napravlenie bigint unsigned UNIQUE COMMENT 'номер направления', mkb10_id int COMMENT 'мкб', positions_id int COMMENT 'должность', -- foreign key (mkb10_id) references mkb10 (id), FOREIGN KEY (positions_id) REFERENCES positions (id), -- comment 'ФИО Врача', napavlenie_is_avtive bit DEFAULT (0) ) COMMENT 'Направление пациентов в другие МО'; -- информация по пациентам у кого какая ДЛО (может быть несколько) -- DROP TABLE IF EXISTS llo_patient; CREATE TABLE IF NOT EXISTS llo_patient ( id serial PRIMARY KEY, adder_at datetime DEFAULT CURRENT_TIMESTAMP COMMENT 'Добавление в БД дата и время ', patientid bigint COMMENT 'Пациент', dlo_id bigint COMMENT 'Код льготной категории', -- foreign key (patientid) references patient (id), -- foreign key (dlo_id) references dlo (id), llo_pztient_is_active bit default(0) COMMENT 'активна льгота' ) COMMENT 'Льготы пациентов';
SQL
Server:
MariaDB 11.4
MariaDB 11.5
MariaDB 10
MariaDB 10 Sakila (ReadOnly)
MySQL 5.7
MySQL 5.7 Sakila (ReadOnly)
MySQL 8.0
MySQL 8.0 Sakila (ReadOnly)
SQLite 3
SQLite 3 Preloaded
PostgreSQL 10 Bookings (ReadOnly)
PostgreSQL 11
PostgreSQL 12
PostgreSQL 13
PostgreSQL 14
PostgreSQL 15
MS SQL Server 2017
MS SQL Server 2019
MS SQL Server 2022
MS SQL Server 2022 AdventureWorks (ReadOnly)
Firebird 4.0
Firebird 4.0 (Employee)
Oracle Database 19c (HR)
Oracle Database 21c
Oracle Database 23c Free
SOQOL
Version
ER Diagram
Preserve result
Stuck with a problem?
Got Error?
Ask ChatGPT!
Result:
Copy
Clear