On 1/12/2011 2:54 PM, Duquette, William H (318K) wrote: > I've just discovered that a REPLACE can trigger a > cascading delete. Is this expected behavior? > > I have an undo scheme where I grab entire rows from the > database before they are changed; then, on undo I > simply put the rows back using "INSERT OR REPLACE". > My assumption was that doing a REPLACE was > equivalent to doing an UPDATE on the non-key > values given the key values. Apparently not.
From the "ON CONFLICT" section of the docs: "When a UNIQUE constraint violation occurs, the REPLACE algorithm deletes pre-existing rows that are causing the constraint violation prior to inserting or updating the current row and the command continues executing normally." This seems to make it expected behavior. Gerry (JPL retiree) _______________________________________________ sqlite-users mailing list sqlite-users@sqlite.org http://sqlite.org:8080/cgi-bin/mailman/listinfo/sqlite-users