Главная страница
    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.45 MB
Время: 0.009 c
3-95222
Tutov Roman
2002-07-08 11:25
2002.07.29
Помогите составить запрос ...


3-95236
grig
2002-07-08 15:49
2002.07.29
Как узнать, включены ли в TTable диапазоны (SetRange)


1-95371
xyz
2002-07-15 21:02
2002.07.29
objects а что это такое?


1-95390
Evgeny
2002-07-16 09:36
2002.07.29
Type to Str


14-95527
esprit_bel
2002-07-02 05:44
2002.07.29
Осмысл





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