Hallo,

I'm using the sqldiff tool with the --primarykey option to generate a diff 
between two databases
with the "WITHOUT ROWID" optimization.
sqldiff from sqlite 3.9.1 and 3.9.2 produces SQL statements with an incorrect 
WHERE clause.

For example:
UPDATE tt_dati SET codCommerciale='555' WHERE 
idtimetable='1-0640-20150906-1599', nodo=0, palina=592, ricorrenza=3, 
progressivo=8;

The SQL correct  statement should be:
UPDATE tt_dati SET codCommerciale='555'  WHERE 
idtimetable='1-0640-20150906-1599' AND nodo=0 AND palina=592 AND ricorrenza=3 
AND progressivo=8;

In the attachment you will find my fix to the sqlite-src-3090100/tool/sqldiff.c 
file that solves this problem.

Best regards,
Oskar 

-- 
Oskar Stuffer
Servizi s.t. srl, Corso Italia 13/N, I-39100 Bolzano
capitale sociale versato 10.400,00 EUR
CCIAA 1342368 Tribunale di Milano 302137 CF: 01156500181 PI: IT09955600151


Reply via email to