pf: Замучился уже
Александр Петросян (PAF) 29.09.2005 10:17
Павел, любимый, помоги:
как в обожаемом MSAccess отловить изменения в записях, не применяя форму с AfterUpdate на таблице?
пока придумалось только преобразовать таблицу к Design Master, тогда Access сам начинает вести нужные записи, но делает он это дело очень сложно.
потом придумалось подсмотреть протокол Indirect syncronization, после пары дней мучений подсмотреть удалось,
2005-09-28 13:36:25 213.152.135.71 - 213.152.134.18 80 PUT /replicated/tst282577.tmp - 201TransporterClient
2005-09-28 13:36:25 213.152.135.71 - 213.152.134.18 80 GET /replicated/tst282577.tmp - 200 TransporterClient
2005-09-28 13:36:25 213.152.135.71 - 213.152.134.18 80 DELETE /replicated/tst282577.tmp - 200 TransporterClient
2005-09-28 13:36:25 213.152.135.71 - 213.152.134.18 80 PUT /replicated/rep282642.msg - 201 TransporterClient
2005-09-28 13:36:25 213.152.135.71 - 213.152.134.18 80 PUT /replicated/Jet282603.tmp - 201 TransporterClient
2005-09-28 13:36:25 213.152.135.71 - 213.152.134.18 80 GET /cgi/mstrai40.exe ERRORCODE=0&MESSAGEFILE=rep282642.msg&MESSAGEDBFILE=Jet282603.tmp& 200 TransporterClient
но файлы обмена оказались далеки от XML.
а на то, чтобы передать информацию "ничего тут не меняли" обожаемый Access передал 9130 загадочных байт.
остаётся попробовать подсмотреть даты обновления таблиц и в обновлявшихся подсмотреть, что менялось, заведя спецколонку(невидимую), где хранить исходный CRC от всех букв записи. тогда можно одним
select s_GUID from таблица
where crc(текущих значений)!="исходная CRC"
быстро достать изменившиеся.
но это медленно и не суперизящно, может что ищё можно?
P.S. всё это нужно, чтобы не писать ODBC драйвер — дело совершенно не на пару недель, которые есть.
P.P.S. это всё нужно, чтобы спрятать от пользователя сложные структуры таблиц и представить всё простым, для возможно более гибкого export/import/reporting.
P.P.P.S. да, на mssql/oracle можно было бы добиться желаемого через views+sp, но хочется, чтобы система работала на любой базе. (помню mysql5, но сами понимаете -- поддерживать 3+ варианта хранимых удовольствие ниже среднего)
- MySQL, Павел 28.09.2005 00:28
- Ответ, Misha v.3 [M] 28.09.2005 01:18
- Ответ, Павел 28.09.2005 10:18