Fix duplicate record before creating primary key

This commit is contained in:
Laurent Destailleur 2018-05-27 19:31:03 +02:00
parent 3f489ee3c6
commit f3f252e88b
2 changed files with 9 additions and 2 deletions

View File

@ -4197,7 +4197,7 @@ else if ($id > 0 || ! empty($ref))
$sql .= ' WHERE pf.fk_facture = ' . $object->id . ' AND pf.fk_paiement = p.rowid';
$sql .= ' AND p.entity IN (' . getEntity('facture').')';
$sql .= ' ORDER BY p.datep, p.tms';
print $sql;
$result = $db->query($sql);
if ($result) {
$num = $db->num_rows($result);

View File

@ -142,10 +142,17 @@ ALTER TABLE llx_expensereport_det ADD COLUMN docnumber varchar(128) after fk_exp
ALTER TABLE llx_website_page ADD COLUMN aliasalt varchar(255) after pageurl;
-- Add missing keys and primary key
DELETE FROM llx_c_paiement WHERE code = '' or code = '-' or id = 0;
-- Remove duplicate record with same primary key in llx_c_paiement
DROP TABLE llx_c_paiement_temp;
CREATE TABLE llx_c_paiement_temp AS SELECT * FROM llx_c_paiement;
DELETE FROM llx_c_paiement WHERE entity > 1 AND id IN (SELECT cp2.id FROM llx_c_paiement_temp as cp2 WHERE cp2.entity = 1);
-- Add missing keys and primary key
ALTER TABLE llx_c_paiement DROP INDEX uk_c_paiement;
ALTER TABLE llx_c_paiement ADD UNIQUE INDEX uk_c_paiement_code(entity, code);
-- VMYSQL4.3 ALTER TABLE llx_c_paiement CHANGE COLUMN id id INTEGER AUTO_INCREMENT PRIMARY KEY;
-- VPGSQL8.2 CREATE SEQUENCE llx_c_paiement_id_seq OWNED BY llx_c_paiement.id;
-- VPGSQL8.2 ALTER TABLE llx_c_paiement ADD PRIMARY KEY (id);