From be37c2c99ccaa94391b3bf5648f45015e1d2db6d Mon Sep 17 00:00:00 2001 From: Marius Mutu Date: Fri, 7 Aug 2026 13:26:38 +0300 Subject: [PATCH] sync SVN r17994: reguli suplimentare pentru scripturile de migrare DB Niciun ';' la capat de linie intr-un comentariu '--' din interiorul unei instructiuni (SQL*Plus termina instructiunea acolo, chiar daca ';'-ul e in comentariu). Fiecare script se incheie cu exec pack_migrare.UpdateVersiune(''); urmat de commit; (UpdateVersiune e DML, fara commit explicit VERSIUNE minte despre ce s-a aplicat). --- docs/scripturi-migrare-db.md | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/docs/scripturi-migrare-db.md b/docs/scripturi-migrare-db.md index 470afb0..ce06133 100644 --- a/docs/scripturi-migrare-db.md +++ b/docs/scripturi-migrare-db.md @@ -16,6 +16,15 @@ Reguli confirmate de Marius (24.07.2026): final (conventia existenta). - Aplicarea prin ODBC/`goExecutor`: sintaxa SQL*Plus `exec pachet.procedura(...)` nu functioneaza — foloseste `begin pachet.procedura(...); end;`. +- **Niciun `;` la capat de linie intr-un comentariu `--` din interiorul unei instructiuni.** SQL*Plus + termina instructiunea acolo, chiar daca `;`-ul e in comentariu: restul `CREATE VIEW`-ului ajunge sa + fie interpretat linie cu linie ca si comenzi, cu zeci de `SP2-0734` si un `ORA-00936` derutant care + arata spre comentariu. Pus la sfarsit de fraza, `.` in loc de `;`. Comentariile de **dinaintea** + instructiunii nu sunt afectate. +- **Fiecare script se incheie cu `exec pack_migrare.UpdateVersiune('');` urmat de + `commit;`.** DDL-ul comite implicit, dar `UpdateVersiune` e DML: fara `commit` explicit, un script + se poate aplica fara ca versiunea sa se inregistreze, iar `VERSIUNE` ajunge sa minta despre ce s-a + aplicat. - **Rularea manuala se face conectat pe schema tinta** (`CONTAFIN_ORACLE` pentru `co_`, schema firmei pentru `ff_`), niciodata cu un user de lucru. DDL-ul neprefixat (`create or replace package ...`) merge pe schema conexiunii: pe alt user iese `PLS-00304` si ramane un obiect orfan, iar pachetul