Здравствуйте, mmaxx, Вы писали:
M>Знаю, что тема не нова, но время не стоит на месте...
Забавная мысль пришла в голову (потеснив, находящуюся там еду) — "а ты что нибуть сделал, что бы другое (отличное от времени) не стояло на месте?"
M>Может, насоветуете альтернативную СУБД: M>* защита от юзверя (что раздражает в Firebird — так это божественное всемогущие SYSDBA).
Странно это как-то...
А надежность, значит, вообще не интересует.
-- Пользователи не приняли программу. Всех пришлось уничтожить. --
Здравствуйте, mmaxx, Вы писали:
M>Может, насоветуете альтернативную СУБД: M>* бесплатная; M>* параллельные транзакции; M>* хранимые процедуры, триггеры; M>* защита от юзверя (что раздражает в Firebird — так это божественное всемогущие SYSDBA).
M>Работать будет на клиентской машине, объем данных небольший, сотни Мб. Желательно embedded. M>Ну и чтоб Data Provider для .NET был достойный
Здравствуйте, kuj, Вы писали:
M>>Может, насоветуете альтернативную СУБД: M>>* параллельные транзакции; M>>Работать будет на клиентской машине, объем данных небольший, сотни Мб. Желательно embedded. M>>Ну и чтоб Data Provider для .NET был достойный
kuj>SQL Server 2005 Express
Параллельные транзакции?
Embeded?
А поподробней, где почитать про всё это применительно к MS SQL?
--
WBR и ничего личного
... << RSDN@Home 1.2.0 alpha rev. 743>>
Привет, Ромашка!
Вы пишешь 19 сентября 2007:
>> Параллельные транзакции?
Р> Это что-то в Firebird перемутили. Р> Транзакции параллельными и перпендикулярными быть не могут.
Да что ты?! Да как же так?! Как же жить после этого?..
Alex.Che пишет: > Да что ты?! Да как же так?! Как же жить после этого?..
Можешь повеситься.
Понятие транзакции не подразумевает под собой параллельности (или той
хрени которую вы понимаете под этим в соседнем топике). Вообще, в
принципе. А сколько ты транзакций откроешь, зависит только от
архитектуры твоего приложения и совершенно не зависит от сервера БД
(исключая клинические случаи). Только "параллельными" они не будут --
они будут просто разными.
Posted via RSDN NNTP Server 2.1 beta
Всё, что нас не убивает, ещё горько об этом пожалеет.
Здравствуйте, Ромашка, Вы писали:
>> kuj>SQL Server 2005 Express >> Параллельные транзакции? Р>Это что-то в Firebird перемутили. Транзакции параллельными и Р>перпендикулярными быть не могут.
Ну, с исторической точки зрения FireBird тут совсем ни при чем.
"Перемутил" Джим в незапамятные времена.
За что многие люди (и я) ему благодарны.
>> Embeded? Р>Нет.
Это было одно из требований.
>> А поподробней, где почитать про всё это применительно к MS SQL? Р>BooksOnLine. Скачать мождно с сайта мелкомягких.
Там ни слова про параллельные транзакции.
Р>ЗЫ. Бесплатные версии есть также у Оракла и ДБ2. Все не embedded.
Не в одном из перечисленных нет того, что нужно:
— несколько транзакций на сессию. тем более с разными уровнями изоляции
— минимальные затраты на развёртывание (положил DLL в каталог продукта и все. Или еще проще — прилинковал либы в экзешник).
— открытые исходники с возможностью модификации.
Итого: к чему вообще был этот пост?
--
WBR и ничего личного
... << RSDN@Home 1.2.0 alpha rev. 743>>
Здравствуйте, Ромашка, Вы писали:
Р>Понятие транзакции не подразумевает под собой параллельности (или той Р>хрени которую вы понимаете под этим в соседнем топике). Вообще, в Р>принципе. А сколько ты транзакций откроешь, зависит только от Р>архитектуры твоего приложения и совершенно не зависит от сервера БД Р>(исключая клинические случаи). Только "параллельными" они не будут -- Р>они будут просто разными.
Здравствуйте, SmlMouse, Вы писали:
M>>>Может, насоветуете альтернативную СУБД: M>>>* параллельные транзакции; M>>>Работать будет на клиентской машине, объем данных небольший, сотни Мб. Желательно embedded. M>>>Ну и чтоб Data Provider для .NET был достойный
kuj>>SQL Server 2005 Express SM>Параллельные транзакции?
MARS http://msdn2.microsoft.com/en-us/library/ms345109.aspx
SM>Embeded?
Не совсем, но можно цеплять файл базы по AttachDbFilename, не ограничиваясь при этом "встроенностью базы". Кроме того, по-умолчанию SQL Express ставится с локальной-only видимостью.
Это лучше, чем просто embeded для больших проектов.
SM>А поподробней, где почитать про всё это применительно к MS SQL?
MSDN
[Предельно вежливо] MARS предназначен для параллельной выборки из нескольких множеств в рамках одного подключения. А для MSSQL, соответственно — одной транзакции. Не более и не менее.
-- Пользователи не приняли программу. Всех пришлось уничтожить. --
Здравствуйте, IB, Вы писали:
IB>Здравствуйте, Коваленко Дмитрий, Вы писали:
КД>> А для MSSQL, соответственно — одной транзакции. Не более и не менее. IB>Нет, транзакции разные.
Иван, признаюсь честно — я не тестил это дело. Ни разу.
Но по-логике вещей: если я стартовал транзакцию (создал сессию), стартовал транзакцию, в рамках сессии (с активной транзакцией) открыл два множества, то откуда тут будет две транзакции?
Хотя ... если я работаю в "автокоммите" (то есть с автоматическим стартом транзакций), то возможно ... Ну да, точно. И, судя по твоей довольной улыбке, отдельные подключения для этих автономных транзакций значит не создаются?
Хорошо, явно (то есть не косвенно) две транзакции в MSSQL 2005 создать можно? Если можно, то я искренне за него порадуюсь.
-- Пользователи не приняли программу. Всех пришлось уничтожить. --
Сорри, на всякий случай уточню
КД>Хорошо, явно (то есть не косвенно) две транзакции в рамках одного подключения в MSSQL 2005 создать можно? Если можно, то я искренне за него порадуюсь.
-- Пользователи не приняли программу. Всех пришлось уничтожить. --
Здравствуйте, Коваленко Дмитрий, Вы писали:
КД>Но по-логике вещей: если я стартовал транзакцию (создал сессию), стартовал транзакцию, в рамках сессии (с активной транзакцией) открыл два множества, то откуда тут будет две транзакции?
Ну, в этом случае, конечно, нет. А если явно открыть две транзакции и начать выгребать два множества, то запросто.
КД> Ну да, точно. И, судя по твоей довольной улыбке, отдельные подключения для этих автономных транзакций значит не создаются?
Нет, не создаются.
КД>Хорошо, явно (то есть не косвенно) две транзакции в MSSQL 2005 создать можно?
Можно.
КД>Если можно, то я искренне за него порадуюсь.
Было бы за что. На мой взгляд довольно бестолковая фича, помоему ее сделали просто потому что ее реализация обошлась практически бесплатно, копали где-то рядом, то ли калбэки сервис-брокера прикручивали, то ли еще для что-то, заодно и MARS получили.
Здравствуйте, IB, Вы писали:
КД>>Хорошо, явно (то есть не косвенно) две транзакции в MSSQL 2005 создать можно? IB>Можно.
Слушай, вы как нибудь с kuj определитесь
Though SQL Server 2005 does not support multiple active transactions per connection, the programming model already accommodates such a future enhancement
Этот программинг модель у них существует с 98 года. Называется OLEDB
-- Пользователи не приняли программу. Всех пришлось уничтожить. --
Здравствуйте, SmlMouse, Вы писали:
SM>Ну, с исторической точки зрения FireBird тут совсем ни при чем. SM>"Перемутил" Джим в незапамятные времена. SM>За что многие люди (и я) ему благодарны.
ничего он не "перемутил".
все кстати, очень логично. Есть коннект. в его рамках можно одновременно
стартовать несколько транзакций. Как минимум, чтобы не открывать каждый
раз новый коннект если потребуется стартовать транзакцию.
Дальше. В транзакции живут запросы. Могут жить одновременно много открытых запросов.
Потому что хэндлы. Получил хэндл транзакции на клиенте, и делай с ним что хочешь.
можно второй получить, и т.п.
Никаких противоречий не вижу. Более того, все это отлично кладется
на нынешнюю концепцию Database->Transaction->DataSource. 1->n->m
А если использовать концепцию "трубы", то есть коннекта в который
кидаются текстовые команды вида start transaction, fetch, то
разумеется, отличать fetch одного запроса от другого, или
запрос в одной транзакции от запроса в другой транзакции — это очуметь можно.
Здравствуйте, Коваленко Дмитрий, Вы писали:
КД>>>Хорошо, явно (то есть не косвенно) две транзакции в MSSQL 2005 создать можно? IB>>Можно. КД>Слушай, вы как нибудь с kuj определитесь КД>
КД>Though SQL Server 2005 does not support multiple active transactions per connection, the programming model already accommodates such a future enhancement
КД>Этот программинг модель у них существует с 98 года. Называется OLEDB
Может хватит уже своей некомпетентностью сверкать тут, Дмитрий? Может хватит спорить о том, о чем представления не имеете?
Вас уже два раза носом ткнули, разжевали и в рот положили, а Вы продолжаете с упорством фанатика доказывать, что Земля плоская и покоится на спинах трех китов...
Цитирую все из того же источника:
-----
MARS-enabled client drivers are the following:
* The SQLODBC driver included in the SQL Native Client.
* The SQLOLEDB driver included in the SQL Native Client.
* The SqlClient .NET Data Provider included in the Microsoft .NET Framework, Version 2.0.