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

Вниз

ADO, MS SQL 7.0 и обновляемые просмотры   Найти похожие ветки 

 
ppcat   (2002-07-06 09:04) [0]

Здравствуйте мастера!

Имеем ADOQuery с запросом к просмотру, на форме лежат DBEdit-ы,
связанные с ним. Меняем что-то в DBEdit-ах, изменения летят в базу, несмотря на то, что это просмотр, а не таблица. После перезагрузки компьютера изменения остаются в силе. Все роисходит на локальном SQL сервере.

Отсюда вопросы:
1. Всегда ли так будет (надежно ли это. В BDE с Paradox, например, это работает не всегда, а при таком раскладе - точно не будет)?
2. Будет ли это работать на удаленном сервере?
3. Всегда ли это будет работать на удаленном сервере?
4. Стоит ли на это надеяться, или апдейтить как положено?

Заранее благодарен.


-------------------------------------------------------------
Подробности:

ADOQuery с SQL следующего вида:

select
*
from
Viewer1
where
not field1 in (select
field2
from
Table1
where
field3 = xxx)
and
not field1 in (select
field2
from
Table2
where
field3 = xxx)


Сам просмотр имеет вид:

select
a1.field1,
a1.field2,
... ,
a2.field1,
a2.field2,
...
from
table1 a1 left outer join
table2 a2 on a1.field1 = a2.field1 left outer join
table3 a3 on ...
where
field1=xxx and
field2=xxx and
...


 
savbr   (2002-07-08 05:25) [1]

1-3. Если на MSSQL работает, то будет работать всегда, безразлично локальный это сервер или нет (по крайней мере, пока не изменишь просмотр). Насчет всегда ли обновление будет касаться желаемых записей или время от времени будет обновяться все что попало - сказать трудно, зависит от структуры данных, просмотра и самих данных.
4. Если работа с запросом заключается только в update полей - можно оставить так, а вот если delete|insert - лучше не надеятся. У ADO на этот счет всегда есть собственное мнение, зачастую не совпадающее с мнением программера :)
IMHO, смотри лучше форум на www.sql.ru, и на Королевстве Delphi. Сорри, но с толковыми ответами по БД на Мастаке совсем плохо.


 
doomin   (2002-07-08 10:34) [2]

есть свод правил updatable views. Если view подчиняется этим правилам, то это будет работать на всех серверах, которые поддерживают sql 92, независимо локальные они или удаленные. Правила наизусть не помню, т.к. не пользуюсь такими view, но они описаны в любой книжке по sql


 
TSV   (2002-07-08 11:20) [3]

В MSSQL 2000 можно вешать триггеры INSTEAD OF на виды. И в триггерах реализовывать всю логику по insert / delete / update для любых видов.



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

Форум: "Базы";
Текущий архив: 2002.07.29;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.55 MB
Время: 0.023 c
14-95538
ProgMan
2002-06-25 10:52
2002.07.29
Курение?


14-95533
kull
2002-07-02 23:37
2002.07.29
Почему у Delphi скорость компиляции выше?


3-95225
Ильдар
2002-07-08 11:45
2002.07.29
Разработка БД.


3-95257
Кузнецов
2002-07-05 14:37
2002.07.29
Запросы буть они не ладны


3-95203
alexvan
2002-07-06 16:57
2002.07.29
Как в SQL запрос вставить переменную





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
Английский Французский Немецкий Итальянский Португальский Русский Испанский