Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

А где в компонентах DAO транзакции? [D7, Пробую Oracle]


Страницы:   1 2

gleb_b ©   (2004-04-26 14:42:00) 

Как их стартовать и подтверждать? Или мне чего то почитать надо?


gleb_b   (2004-04-28 11:40:00) [1]


> roottim   (28.04.04 10:56) [38]
Спасибо. А ещё мне хелп в ODAC больше понравился :=)


roottim   (2004-04-28 10:56:00) [2]

У меня крутиться на ODAC. вот чего нет в DOA дык это Net option
чем собственно ODAC мне и нравилтся.. я поменял немало версий ODAC, и минус их в том что от версии к версии наблюдались очередные баги( которые приходилось обходить), но вот с версии
4.10 более такого не наблюдаю (видомо был переходный период по крайней мере с версии 3.15 кажись, которая была стабильной).
DOA в этом смысле стабильный компонент.
Многие DOA товарищи утверждают что в ODAC лишняя туча компонентов, но это все вракии.. если они читали руководство.. то там написано что всякие квери, таблы и пр-яя БДЕ подобная наполненность, есть лиш комерческий ход, для привлечения перехода с БДЕ на ОДАК, ибо так им будет проще жить (и визард такой есть)
аВ действительности DOA и ODAC по возможностям РАВНЫ..  и блоки и все что угодно.. пожайлуста..
ничего не могу сказать про бесплантые NC OCI, к сожалению так их  и непробовал...

так что для gleb_b - в чем удобнее в том и делайте


Sergey13   (2004-04-28 10:09:00) [3]

2gleb_b   (28.04.04 10:02) [36]
В огогоде бузина, а в Киеве дядька. 8-)


gleb_b   (2004-04-28 10:02:00) [4]


> А ты ощущаешь разницу между словами Query и DataSet?
Ощущаю.
Видимо дело в том что ты не работал с ODAC. Их SmartQuery по сути своей и есть DataSet.


Sergey13   (2004-04-28 08:59:00) [5]

2gleb_b   (27.04.04 15:53) [29]
>Хотя лично мне пока больше ODAC нравится, у него в OraQuery есть возможность забить Select, Insert, Update, Refresh запросы, а у OracleDataSet (из DOA) нет.
А ты ощущаешь разницу между словами Query и DataSet? Это первое. Второе. В Query DOA (С ODAC не работал) можно забить чего угодно, хоть скрипт, хоть неименованный PL/SQL блок.


Курдль   (2004-04-27 17:17:00) [6]


> Лучше использовать ODAC, а то непросто замучаетесь с пераметрами,
> а умрете.

"Это как?" - спросил мертвец. :(


Erik   (2004-04-27 17:14:00) [7]

Лучше использовать ODAC, а то непросто замучаетесь с пераметрами, а умрете. Для midas также предпочительней ODAC(мягко сказано). А принципы транзакций везде одинаковы, что IB, что ORACLE.


gleb_b   (2004-04-27 16:39:00) [8]


> оракл имеет сейвпоинты но только в прямом направлении..
> тобиш кусками нельзя
Э - э - эх.
Вспоминается анекдот про наших лесорубов и финскую бензопелу.


roottim   (2004-04-27 16:35:00) [9]

2Что делать, если надо первый insert откатить, а второй закомитить?

неее. сумбур какой-то в вашей логике... смысл транзакции как раз в том:
либо пан либо пропал( плюс оракл имеет сейвпоинты но только в прямом направлении.. тобиш кусками нельзя)


Курдль   (2004-04-27 15:58:00) [10]


> > Вопрос про Oracle и транзакции мне тоже интересен
>
> Кажется интересен он только нам с тобой :-(

Чего на них так свет клином сошелся? Не утомляйте мОзги!
Пишите OracleSession.ApplyUpdate([DataSet1, DataSet2, DataSet3 ...]); и будет вам счастье! Откроется транзакция без ваших усилий, отработаются все фиксации изменений всех датасетов, а если что-то внутри глюкнет - все автоматом откатится!


gleb_b   (2004-04-27 15:53:00) [11]


> Вопрос про Oracle и транзакции мне тоже интересен

Кажется интересен он только нам с тобой :-(


> сравнение по DOA и ODAC

Статьи не нашёл, но общее впечатление, что народ больше DOA уважает. Хотя лично мне пока больше ODAC нравится, у него в OraQuery есть возможность забить Select, Insert, Update, Refresh запросы, а у OracleDataSet (из DOA) нет. А я к этому привык пользуя FIBDataSet.


Deniz   (2004-04-27 13:06:00) [12]

> gleb_b   (27.04.04 11:39) [23]
>... Она для того чтобы читающие пользователи не блокировали
> пишущих...

А это откуда? Читатель, в FireBird/InterBase, никогдане блокирует никого, ни писателя ни читателя!
Просто в FIBPlus реализована возможность, на мой взгляд очень удобная. Для DataSet'а назначаются 2 транзакции. 1 - read only легкая не нагружающая сервер(не создается версии записей), и вторая пишущая(параметры могут быть разные + write). Так вот, когда юзер редактирует запись все изменения хранятся в локальном буфере и после того как был вызван Post автоматически стартует 2-транзакция посылает на сервер запрос на изменение и если все "хорошо" + AutoCommit=True, то завершается по Commit. Если произошли ошибки, то 2-транзакция откатывается.
Вопрос про Oracle и транзакции мне тоже интересен, и поэтому присоединяюсь к автору. Вот мой вопрос как продолжение gleb_b   (27.04.04 11:26) [18]
1)insert into mytable1
(field1)
values (1) Тут же стартует транзакия 1.

Второй insert into mytable2
(field1)
values (2).
Что делать, если надо первый insert откатить, а второй закомитить?
>gleb_b
Недавно при поиске в rambler нашел небольшое сравнение(очень маленькая статья) по DOA и ODAC, но там сравнение кол-ва компонентов и некоторых возможностей, и маленький вывод. Если найдешь что получше кинь ссылку, или может кто знает из гуру Oracle.


gleb_b   (2004-04-27 12:30:00) [13]

Ну а насчёт компонентов какже? :-(
Чё посоветуете?


Sergey13   (2004-04-27 11:47:00) [14]

2gleb_b   (27.04.04 11:39) [23]
В Оракле читатель никогда не блокирует, если специально не указывать обратное.


gleb_b   (2004-04-27 11:46:00) [15]


> Тогда я вычеркиваю и ИБ из списка потенциальных СУБД, с
> которыми можно работать! :)

А чёй то, это даёт лишнюю гибкость при работе. Или вы исповедуете принцип "блокировать всё, что можно и даже больше"?


Курдль   (2004-04-27 11:43:00) [16]


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

Тогда я вычеркиваю и ИБ из списка потенциальных СУБД, с которыми можно работать! :)


gleb_b   (2004-04-27 11:39:00) [17]

Последний вопрос по компонентам. Так что вам больше нравится, ODAC или  DOA?
PS Курдль  и Sergey13 спасибо за разьяснения.


> А в ИБ, значицца, есть? И зачем она? :( Вот век живи - век
> учись :(
> Плз, расскажите!

Она для того чтобы читающие пользователи не блокировали пишущих. Те одному Dataset'y можно сопоставить 2 транзакции. В одной читать, а в другой писать. В FibPlus это реализовано, а для стандартных компонентов надо апдейт скачать. Кажись так :-)


Sergey13   (2004-04-27 11:34:00) [18]

2Курдль ©   (27.04.04 11:28) [19]
Сори, я кажется неправильно понял. 8-)


Sergey13   (2004-04-27 11:32:00) [19]

2Курдль ©   (27.04.04 11:28) [19]
>Вторая транзакция не запускается.
С какого пива? Просто это все сработает (если сработает вообще 8-) в рамках одной транзакции.


gleb_b   (2004-04-27 11:28:00) [20]


> Тут как раз savepoint катит.
> И еще, нет в оракле такого понятия как читающая тразакция
> в терминах ИБ, и ее соответственно не надо комитить/откатывать
> и при комит ничего не закрывается.

Теперь понял. Спасибо.


Страницы:   1 2

Наверх

Титульная страница Поиск, карта сайта Написать письмо