[INTERFACES] MSAccess problem deleting rows
От | leif@danmos.dk |
---|---|
Тема | [INTERFACES] MSAccess problem deleting rows |
Дата | |
Msg-id | 199905242255.AAA24506@crysberg.dk обсуждение исходный текст |
Список | pgsql-interfaces |
Hello, I have a problem running M$Access on a PostgreSQL database, deleting rows from 'raw' Access, i.e. doing an open on a table selecting a hole row and then deleting this row. The problem arises when the table includes a float: create table effektivitet ( id serial , value float, primary key (id) ); create unique index ix_effekt_uniq on effektivitet (id); Consider a row with the following values: id | value 5 | 1.1666666666666666666.... Depending on how wide my float column is displayed, M$Access will do something like: 'DELETE FROM effektivitet WHERE id = 5 AND value = 1.6667;'. Of course there is no such row and M$Access displays some (stupid) message like "Others have been changing ...." and aborts the operation. This also goes for an update on such a table. I can of course manually delete the row by doing a 'delete from effektivitet where id = 5;' either in the SQL creator within Access or directly on the Linux box. This also happens with following piece of VB code: Set rstEffective = UT32_recordset("Select * From [Effektivitet] Where [Id] = '" & Employee & "' ;") With rstEffective .Edit !Value = rstEffective!Value + NewValue .Update End With How can I make M$Acess use the unique index column for pointing out this specific row in stead of generating a where clause containing all fields in the table? I am running PostgreSQL 6.4.2 on RedHat 5.0 and kernel 2.0.32. (I downloaded and installed it just a few weeks ago. This goes for psqlODBC as well). Greetings, Leif (leif@danmos.dk)
В списке pgsql-interfaces по дате отправления: