http://www.devart.com/forums/viewtopic. ... w++changed
The problem concerns SQLite version 3.x of dotConnect (older versions 2.x worked correctly).
It could be reproduced by the following steps:
1) create simple table with DATETIME column, e.g.:
Code: Select all
CREATE TABLE [table_test] (
[id] INT NOT NULL,
[date_update] DATETIME NOT NULL,
CONSTRAINT [] PRIMARY KEY ([id]));
Code: Select all
insert into table_test (id, date_update) VALUES (1, '2011-03-03 17:48:10');
Code: Select all
TableTest test = DB.TableTests.Where(tt => tt.Id == 1).Single();
test.Date_update = DateTime.Now;
DB.SubmitChanges();
Code: Select all
Message: "Row not found or changed."
at Devart.Data.Linq.y.a(DataContext A_0, ConflictMode A_1)
at Devart.Data.Linq.y.b(DataContext A_0, ConflictMode A_1)
at Devart.Data.Linq.DataContext.SubmitChanges(ConflictMode failureMode)
at Devart.Data.Linq.DataContext.SubmitChanges()
...
2b) By the way, if you insert a record with datacontext:
Code: Select all
TableTest test = new TableTest();
test.Id = 2;
test.Date_update = DateTime.Now;
DB.TableTests.InsertOnSubmit(test);
DB.SubmitChanges();

The difference is probably in miliseconds.
My conclusion -> A workaround for this problem is to set UpdateCheck=Never for each DATETIME entity. However, I think it shall be resolved either by modifying update query or setting UpdateCheck property to 'Never' by default for DATETIME entities.
Thanks for your attenttion in advance.