Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2008.07.06;
Скачать: CL | DM;

Вниз

узнать запрос dataset на изменение данных   Найти похожие ветки 

 
ply   (2008-06-08 19:51) [0]

как узнать запрос, который DataSet посылает базе для изменения данных (при вызове DataSet.Post)


 
Тын-Дын ©   (2008-06-08 20:12) [1]


> ply   (08.06.08 19:51) 
> как узнать запрос, который DataSet посылает базе для изменения
> данных (при вызове DataSet.Post)


Воспользоваться средствами мониторинга для соответствующей БД?


 
sniknik ©   (2008-06-08 20:18) [2]

или средствами ODBC если он есть(можно внести) в цепочке "приложение -> ... -> база"


 
ply   (2008-06-09 12:45) [3]


> Воспользоваться средствами мониторинга для соответствующей
> БД?

хотелось бы ДО запроса


 
MsGuns ©   (2008-06-09 12:46) [4]

Писать запрос "ручками"


 
ply   (2008-06-09 16:13) [5]

ручками неохота, так как в базу надо заносить только измененные значения?
может можно как-то узнать какие поля и как изменились?


 
Поросенок Винни-Пух ©   (2008-06-09 16:14) [6]

Можно конечно.


 
clickmaker ©   (2008-06-09 16:18) [7]

> может можно как-то узнать какие поля и как изменились?

UpdateStatus OldValue NewValue


 
Anatoly Podgoretsky ©   (2008-06-09 16:22) [8]


> ручками неохота, так как в базу надо заносить только измененные
> значения?

Зачем, ты думаешь, что то изменится, если до запроса а было равно 5, и без анализа а=5 что то изменится? Ты как то определишь, что первый 5 не измененый, а второй 5 измененый. Не стоит ли заняться делом или точно объяснить задачу, зачем такое нужно. Только это лишняя ненужная работа, которая может снизить производительность, особенно при большом количестве полей.


 
ply   (2008-06-09 16:40) [9]

вот задача
нужно сохранять все sql-запросы, изменяющие данные

а вот зачем оно надо:
база клиентов должн быть доступна из разных точек. Синхронизацию хочу сделать через интернет. Но так как бывают перебои в связи с сетью, нужно чтобы была возможность редактировать данные оффлайн, с последующим их обновлением на других компьютерах, на которых данные не редактировались.

думаю сделать так:
Все сделанные изменения хранить в виде sql-запросов к базе.

Компьютеры будут периодически подключасться к серверу в Интернете и закачивать на него изменения в виде запросов к базе, и скачивать, а затем выполнять запросы, сделанные с других компьютеров.

Есть еще вариант сделать главную базу данных клиентов в интернете и периодически синхронизировать с ней локальные базы. Только пока я смутно представляю ка кэто сделать: например, в главной базе клиента нет, а влокальной есть. Это можно расценивать как добавление клиента и то что он был удален с другого компьютера.


 
clickmaker ©   (2008-06-09 16:47) [10]

> [9] ply   (09.06.08 16:40)

для этого больше ClientDataSet + WebConnection подходит


 
Sergey13 ©   (2008-06-09 16:59) [11]

> [9] ply   (09.06.08 16:40)
> например, в главной базе клиента нет, а влокальной есть.
> Это можно расценивать как добавление клиента и то что он
> был удален с другого компьютера.

Для этого надо не удалять а ставить метку о его удалении.

> закачивать на него изменения в виде запросов к базе, и скачивать,
> а затем выполнять запросы, сделанные с других компьютеров.

Если это не одна табличка, а несколько связанных, могут быть проблемы с целостностью данных. Так в лоб эту проблемму решать стремно, ИМХО.

Что за СУБД? Может есть встроенная репликация?


 
ply   (2008-06-09 17:03) [12]

это понятно... только надо как-то сделать чтобы при потере соединяния с Интернетом можно было бы работать с базой клиентов, а потом, при восстановлении подключения, применить изменения к главной базе


 
ply   (2008-06-09 17:07) [13]

Sergey13, субд - mysql
таблиц много, но синхронизировать надо только одну, таблицу клиентов. Остальные данные на каждом компьютере должны быть разными


 
ply ©   (2008-06-09 17:19) [14]

вот что придумал:
На сервере находится главная таблица с клиентами. На локальных ПК - ее копии, которые каждые полчаса приводятся в соответствие с главной - для возможности просмотра базы офлайн и отображение данных в связанных выборках.

Изменения будут происходить только в online-режиме.

Исключение составляет лишь баланс клиента. Изменеиня будут записываться в специальную таблицу и применяться при подключении к главной базе.

вродебы должно работать...


 
MsGuns ©   (2008-06-09 21:07) [15]

Ты ответы читаешь ? В [10] рецепт дан. То, что ты навыдумывал - это склад тяпок и граблей.



Страницы: 1 вся ветка

Текущий архив: 2008.07.06;
Скачать: CL | DM;

Наверх




Память: 0.5 MB
Время: 0.017 c
2-1213014124
TUserClass
2008-06-09 16:22
2008.07.06
Окно поверх окна, без потери фокуса последнего ...


15-1211727630
TIF
2008-05-25 19:00
2008.07.06
Получить все возможные комбинации символов :(


2-1212592248
Сергей
2008-06-04 19:10
2008.07.06
Какова длина строки (в байтах) которую можно загрузить в MEMO?


8-1164287214
Змей
2006-11-23 16:06
2008.07.06
общение по микрофону через сеть


15-1211451464
Mozgan
2008-05-22 14:17
2008.07.06
Компонент OutlookApplication1