Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Начинающим";
Текущий архив: 2008.07.06;
Скачать: [xml.tar.bz2];

Вниз

узнать запрос 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;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.49 MB
Время: 0.09 c
2-1212695230
ShyricK
2008-06-05 23:47
2008.07.06
Наличие картинки в имаге


2-1212513330
leonidus
2008-06-03 21:15
2008.07.06
Почему растет размер базы при обновлении Blob-поля?


2-1213081247
WebSQLNeederr
2008-06-10 11:00
2008.07.06
Как сделать нестандартно-виндовое оформление окна?


8-1183029262
Tab
2007-06-28 15:14
2008.07.06
Рисование растянутого png


2-1212608338
kami
2008-06-04 23:38
2008.07.06
Как организовать одновременное чтение из COM-порта





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский