mirror of
https://github.com/Dolibarr/dolibarr.git
synced 2025-12-08 02:28:23 +01:00
42 lines
2.5 KiB
SQL
42 lines
2.5 KiB
SQL
--
|
|
-- Script to repair some fatal errors due to database corruption
|
|
-- when current version is 2.6.0 or higher.
|
|
--
|
|
|
|
|
|
-- Requests to clean corrupted database
|
|
|
|
delete from llx_facturedet where fk_facture in (select rowid from llx_facture where facnumber = '(PROV)');
|
|
delete from llx_facture where facnumber = '(PROV)';
|
|
delete from llx_commandedet where fk_commande in (select rowid from llx_commande where ref = '(PROV)');
|
|
delete from llx_commande where ref = '(PROV)';
|
|
delete from llx_propaldet where fk_propal in (select rowid from llx_propal where ref = '(PROV)');
|
|
delete from llx_propal where ref = '(PROV)';
|
|
delete from llx_facturedet where fk_facture in (select rowid from llx_facture where facnumber = '');
|
|
delete from llx_facture where facnumber = '';
|
|
delete from llx_commandedet where fk_commande in (select rowid from llx_commande where ref = '');
|
|
delete from llx_commande where ref = '';
|
|
delete from llx_propaldet where fk_propal in (select rowid from llx_propal where ref = '');
|
|
delete from llx_propal where ref = '';
|
|
|
|
update llx_deplacement set dated='2010-01-01' where dated < '2000-01-01';
|
|
|
|
update llx_cotisation set fk_bank = null where fk_bank not in (select rowid from llx_bank);
|
|
|
|
update llx_propal set fk_projet = null where fk_projet not in (select rowid from llx_projet);
|
|
update llx_commande set fk_projet = null where fk_projet not in (select rowid from llx_projet);
|
|
update llx_facture set fk_projet = null where fk_projet not in (select rowid from llx_projet);
|
|
update llx_commande_fournisseur set fk_projet = null where fk_projet not in (select rowid from llx_projet);
|
|
update llx_contrat set fk_projet = null where fk_projet not in (select rowid from llx_projet);
|
|
update llx_deplacement set fk_projet = null where fk_projet not in (select rowid from llx_projet);
|
|
update llx_facture_fourn set fk_projet = null where fk_projet not in (select rowid from llx_projet);
|
|
update llx_facture_rec set fk_projet = null where fk_projet not in (select rowid from llx_projet);
|
|
update llx_fichinter set fk_projet = null where fk_projet not in (select rowid from llx_projet);
|
|
update llx_projet_task set fk_projet = null where fk_projet not in (select rowid from llx_projet);
|
|
|
|
DELETE FROM llx_boxes where box_id NOT IN (SELECT rowid FROM llx_boxes_def);
|
|
|
|
-- VMYSQL4.1 DELETE T1 FROM llx_boxes_def as T1, llx_boxes_def as T2 where T1.entity = T2.entity AND T1.file = T2.file AND T1.note = T2.note and T1.rowid > T2.rowid
|
|
-- VPGSQL8.2 DELETE FROM llx_boxes_def as T1 WHERE rowid NOT IN (SELECT min(rowid) FROM llx_boxes_def GROUP BY file, entity, note)
|
|
|