MySQL

Cum rulezi mai multe instrucțiuni SQL într-o singură execuție

Rulează mai multe instrucțiuni SQL într-o singură execuție pe Nobregas Panel. Separă instrucțiunile cu punct-virgulă pentru procesare în lot.

3 min de citit 7 vizualizări Actualizat Mar 17, 2026

Nobregas MySQL Panel suportă execuția mai multor instrucțiuni SQL dintr-o dată. Separă fiecare instrucțiune cu punct-virgulă și panoul le va executa secvențial, returnând rezultatele pentru fiecare.

Cum funcționează execuția multi-instrucțiune

Când introduci mai multe instrucțiuni SQL separate prin punct-virgulă, panoul:

  1. Împarte textul introdus în instrucțiuni individuale.
  2. Execută fiecare instrucțiune în ordine pe baza de date selectată.
  3. Returnează rezultatul ultimei instrucțiuni (sau un rezumat combinat al rezultatelor).

Scrierea mai multor instrucțiuni

Separă fiecare instrucțiune cu punct-virgulă (;). Le poți pune pe o singură linie sau pe mai multe linii:

Pe o singură linie

INSERT INTO logs (msg) VALUES ('start'); SELECT * FROM logs;

Pe mai multe linii (recomandat)

INSERT INTO users (name, email) VALUES ('Alice', 'alice@example.com');
INSERT INTO users (name, email) VALUES ('Bob', 'bob@example.com');
SELECT * FROM users ORDER BY id DESC LIMIT 5;

Cazuri comune de utilizare multi-instrucțiune

Inserarea mai multor rânduri

INSERT INTO products (name, price) VALUES ('Widget A', 9.99);
INSERT INTO products (name, price) VALUES ('Widget B', 14.99);
INSERT INTO products (name, price) VALUES ('Widget C', 24.99);

Configurare și verificare

CREATE TABLE IF NOT EXISTS temp_data (id INT AUTO_INCREMENT PRIMARY KEY, value TEXT);
INSERT INTO temp_data (value) VALUES ('test');
SELECT * FROM temp_data;

Operațiuni de curățare

DELETE FROM sessions WHERE expires_at < NOW();
DELETE FROM tokens WHERE created_at < DATE_SUB(NOW(), INTERVAL 30 DAY);
SELECT 'Cleanup complete' AS status;

Considerații importante

Ordinea execuției

Instrucțiunile se execută secvențial de sus în jos. Dacă instrucțiunea 2 depinde de instrucțiunea 1 (de ex. inserare apoi selectare), se vor executa în ordinea corectă.

Gestionarea erorilor

Dacă orice instrucțiune eșuează, execuția se oprește în acel punct. Instrucțiunile dinaintea erorii au fost deja aplicate. Instrucțiunile de după eroare nu sunt executate. Verifică mesajul de eroare pentru a identifica ce instrucțiune a eșuat.

Fără tranzacții

Fiecare instrucțiune este auto-confirmată (auto-commit). Nu există tranzacție implicită care să învelească instrucțiunile multiple. Dacă a treia din cinci instrucțiuni eșuează, primele două au fost deja confirmate și nu pot fi anulate.

Afișarea rezultatelor

Panoul de rezultate al interogărilor arată de obicei rezultatul ultimei instrucțiuni SELECT sau un rezumat al rândurilor afectate din toate instrucțiunile.

Sfaturi pentru interogări multi-instrucțiune

  • Termină întotdeauna cu un SELECT dacă vrei să vezi rezultate după modificări.
  • Testează instrucțiunile individual înainte de a le combina, mai ales pe cele distructive.
  • Folosește comentarii pentru a organiza scripturile complexe multi-instrucțiune:
-- Creare tabel
CREATE TABLE IF NOT EXISTS settings (key_name VARCHAR(100), value TEXT);

-- Inserare valori implicite
INSERT INTO settings VALUES ('site_name', 'My App');
INSERT INTO settings VALUES ('version', '1.0');

-- Verificare
SELECT * FROM settings;

A fost util acest articol?