![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
имя таблицы с которой работал ADOQuery [D6, Access]
evgenij_ © (2006-02-20 11:08:00)Доброго дня.
Такая проблемка:
Есть SQL запросы типа INSERT,DELETE,UPDATE...., которые приходят ко мне по сети, обрабатываю их ADOQuery.
Подскажите, плиз, как мне достать имя таблицы с которой работал ADOQuery чтобы не разбирать сам запрос, и ,если можна, ID измененных записей (ключевое поле в табе есть)
ЮЮ (2006-02-20 12:05:00) [1]
> Клиента тоже я пишу
Тогда не шли на "сервер" SQL-запросы, а запросы типа
Изменить, Имя Таблицы, КлючевоеПоле, ЗначениеКлючевого поля, Изменяемоеполе1, НовоеЗначениеИзменяемогоПоля1, ...
а на соём, язык не поворачивается сказать, сервере - собирай в запрос, уже на входе имея всю необходимую информацию.
З.Ы. Посмотри в сторону TRemoteDataModule и свызянные с ним топики Help-а
Sergey13 (2006-02-20 12:04:00) [2]2[16] evgenij_ (20.02.06 11:57)
> Так вы не поняли...
Это ты не понимаешь. Тебе же говорят - фигней занимаешься. 8-)
Сколько клиентов у тебя работает одновременно? Сколько таблиц в БД?
evgenij_ (2006-02-20 11:57:00) [3]
> Сколько раз ты, как сервер, среагируешь?
Так вы не поняли...Клиента тоже я пишу...там таких вариантов не будет
Sergey13 (2006-02-20 11:54:00) [4]2 [13] evgenij_ (20.02.06 11:48)
> Что значит в цикле?
while not mytable.eof do
begin
mytable.edit;
mytable.fieldbyname('myfield').asstring:='ля-ля';
mytable.post;
mytable.next;
end;
Сколько раз ты, как сервер, среагируешь?
msguns (2006-02-20 11:54:00) [5]>evgenij_ (20.02.06 11:48) [13]
>Пришла месаджа где и что поменялось-то и обновляем
Глупо.
evgenij_ (2006-02-20 11:48:00) [6]
> если клиент в цикле обновляет
Что значит в цикле?
Пришла месаджа где и что поменялось-то и обновляем
Sergey13 (2006-02-20 11:43:00) [7]2[11] evgenij_ (20.02.06 11:35)
> Да ну,- эт не выход
А то, что ты хочешь - вообще не метод. Прикинь, что будет если клиент в циклеобновляет всю (или хотя бы часть) таблицу на несколько тысяч записей.
evgenij_ (2006-02-20 11:35:00) [8]
> Не ограничивай себя, шли всем "В базе что-то поменяли"
Да ну,- эт не выход
ЮЮ (2006-02-20 11:30:00) [9]
> Да, но я хочу остальным разослать меседж что в табе таком
> то чето поменяли
Не ограничивай себя, шли всем "В базе что-то поменяли" - пусть всё качают, если им так важны чужие чихи :)
evgenij_ (2006-02-20 11:29:00) [10]Блин, я чувствую можно по-другому...через датасет...что ли...ладно спасибо-будем искать
msguns (2006-02-20 11:25:00) [11]Ааа, ну тогда пиши парсер сиквеля - дело гнилое и бесперспективное ;))
evgenij_ (2006-02-20 11:22:00) [12]Да, но я хочу остальным разослать меседж что в табе таком то чето поменяли
msguns (2006-02-20 11:20:00) [13]Кхмм.. А зачем их разбирать-то ? Прям "в оригинале" и пихать серверу. А если выплюнет, по "слюне" (в смысле по коду ошибки) и определять чего не так. А можно не разбирая возвращать ерормесадж клиенту.
Johnmen (2006-02-20 11:19:00) [14]>А че по другому никак?
Что значит "по-другому"? Хоть намекни...
evgenij_ (2006-02-20 11:18:00) [15]А че по другому никак? Из ДатаСета както-или по другому
Johnmen (2006-02-20 11:17:00) [16]>Ага
Тогда разбирай. В смысле, запрос разбирай...:)
evgenij_ (2006-02-20 11:16:00) [17]Ага
Sergey13 (2006-02-20 11:15:00) [18]2evgenij_ (20.02.06 11:08)
>Есть SQL запросы типа INSERT,DELETE,UPDATE...., которые приходят ко мне по сети, обрабатываю их ADOQuery.
Ты сервером работаешь что-ли? 8-)