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
CREATE OR REPLACE TRIGGER check_customer_before_order -- Создаем или заменяем триггер BEFORE INSERT OR UPDATE ON Orders -- Триггер срабатывает перед INSERT или UPDATE в таблице Orders FOR EACH ROW -- Для каждой строки DECLARE customer_exists NUMBER; -- Объявляем переменную для хранения количества найденных клиентов BEGIN -- Проверяем, существует ли клиент перед вставкой или обновлением заказа. SELECT COUNT(*) INTO customer_exists -- Считаем количество клиентов с совпадающим номером телефона FROM Customer WHERE phone = :NEW.submittedBy; -- :NEW.submittedBy - значение submittedBy в строке, которая добавляется или изменяется -- Если клиент не существует, генерируем исключение. IF customer_exists = 0 THEN RAISE_APPLICATION_ERROR(-20001, 'Клиент с номером телефона ' || :NEW.submittedBy || ' не существует.'); -- Выбрасываем исключение с сообщением об ошибке END IF; END;
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