Hi! Could we please enable some services and cookies to improve your experience and our website?
No, thanks.
Okay!
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
-- 1. Создаем основную таблицу клиентов CREATE TABLE IF NOT EXISTS clients ( client_id INT AUTO_INCREMENT PRIMARY KEY, first_name VARCHAR(50) NOT NULL, last_name VARCHAR(50) NOT NULL, email VARCHAR(100) UNIQUE, phone VARCHAR(20), registration_date DATE ) ENGINE=InnoDB; -- 2. Создаем архивную таблицу CREATE TABLE IF NOT EXISTS clients_archive ( archive_id INT AUTO_INCREMENT PRIMARY KEY, original_client_id INT, first_name VARCHAR(50) NOT NULL, last_name VARCHAR(50) NOT NULL, email VARCHAR(100), phone VARCHAR(20), registration_date DATE, transfer_date DATETIME ) ENGINE=InnoDB; -- 3. Удаляем триггер если существует (для пересоздания) DROP TRIGGER IF EXISTS archive_client_on_delete; -- 4. Создаем максимально простой триггер DELIMITER // CREATE TRIGGER archive_client_on_delete BEFORE DELETE ON clients FOR EACH ROW BEGIN INSERT INTO clients_archive ( original_client_id, first_name, last_name, email, phone, registration_date, transfer_date ) VALUES ( OLD.client_id, OLD.first_name, OLD.last_name, OLD.email, OLD.phone, OLD.registration_date, NOW() ); END// DELIMITER ; -- 5. Добавляем тестовые данные INSERT INTO clients (first_name, last_name, email, phone, registration_date) VALUES ('Иван', 'Иванов', 'ivan@example.com', '79161234567', '2023-01-15'), ('Петр', 'Петров', 'petr@example.com', '79159876543', '2023-02-20'), ('Мария', 'Сидорова', 'maria@example.com', '79035432109', '2023-03-10'); -- 6. Тестируем триггер -- Удаляем клиента (должен попасть в архив) DELETE FROM clients WHERE client_id = 1; -- 7. Проверяем результаты SELECT 'Текущие клиенты:' AS title; SELECT * FROM clients; SELECT 'Архивные записи:' AS title; SELECT * FROM clients_archive;
SQL
Server:
MySQL 8.0
MySQL 8.0 Sakila (ReadOnly)
MySQL 9.3.0
MariaDB 11.4
MariaDB 11.8
MariaDB 10
MariaDB 10 Sakila (ReadOnly)
SQLite 3
SQLite 3 Preloaded
PostgreSQL 10 Bookings (ReadOnly)
PostgreSQL 13
PostgreSQL 14
PostgreSQL 15
PostgreSQL 16
PostgreSQL 17
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