|
Транзакции и SQLite.
|
|||
---|---|---|---|
#18+
Подскажите: можно ли внести данные в несколько Баз SQLite в контексте одной транзакции ??? ... |
|||
:
Нравится:
Не нравится:
|
|||
24.07.2009, 09:45 |
|
Транзакции и SQLite.
|
|||
---|---|---|---|
#18+
potkinПодскажите: можно ли внести данные в несколько Баз SQLite в контексте одной транзакции ??? RTFM. Краткий ответ - да, можно. Подсказка - если основная база в памяти, возможны неприятности. ... |
|||
:
Нравится:
Не нравится:
|
|||
24.07.2009, 10:00 |
|
Транзакции и SQLite.
|
|||
---|---|---|---|
#18+
MBGpotkinПодскажите: можно ли внести данные в несколько Баз SQLite в контексте одной транзакции ??? RTFM. Краткий ответ - да, можно. Подсказка - если основная база в памяти, возможны неприятности. да? и как же? ... |
|||
:
Нравится:
Не нравится:
|
|||
24.07.2009, 14:05 |
|
Транзакции и SQLite.
|
|||
---|---|---|---|
#18+
Тоже интерестно. Так как Транзакция "привязана" с соединению, а соединится (SQliteConnection) можно только с одной БД. Или я не прав ??? Помогите, если не в лом ... ... |
|||
:
Нравится:
Не нравится:
|
|||
24.07.2009, 16:05 |
|
Транзакции и SQLite.
|
|||
---|---|---|---|
#18+
potkinТоже интерестно. Так как Транзакция "привязана" с соединению, а соединится (SQliteConnection) можно только с одной БД. Или я не прав ??? Помогите, если не в лом ... Ошибаетесь в исходных предпосылках -транзакция не привязана к соединению. См. http://www.sqlite.org/atomiccommit.html В частности, 5.0 Multi-file Commit SQLite allows a single database connection to talk to two or more database files simultaneously through the use of the ATTACH DATABASE command. When multiple database files are modified within a single transaction, all files are updated atomically. In other words, either all of the database files are updated or else none of them are. Achieving an atomic commit across multiple database files is more complex that doing so for a single file. This section describes how SQLite works that bit of magic. Т.е. транзакция атомарна всегда, даже если затрагивает приаттаченные БД. Если будете читать внимательно, то найдете и то, что я написал выше как подсказку. ... |
|||
:
Нравится:
Не нравится:
|
|||
24.07.2009, 16:23 |
|
Транзакции и SQLite.
|
|||
---|---|---|---|
#18+
На СШарпе так Провайдер: "Finisar" Код: plaintext 1. 2. 3. 4. 5. 6.
Привязано к соединению. Может проблема в провайдере ..... ... |
|||
:
Нравится:
Не нравится:
|
|||
24.07.2009, 17:46 |
|
Транзакции и SQLite.
|
|||
---|---|---|---|
#18+
potkinНа СШарпе так Провайдер: "Finisar" Код: plaintext 1. 2. 3. 4. 5. 6.
Привязано к соединению. Может проблема в провайдере ..... В каком месте вы видите привязку к соединению? Когда в одном соединении запущена транзакция, все прочие соединения увидят залоченную базу, т.е. транзакция существует для _всех_ соединений, а не только для того, в котором она выполняется - иными словами, транзакция привязана к БД (или набору БД - когда транзакции для каждой БД контролируются еще и совместно). Таким образом, все изменяемые в транзакции БД будут залочены для других соединений (и транзакций в них), что и гарантирует атомарность транзакции для _всех_ приаттаченных БД. Кстати, временные таблицы/виды и проч. создаются в приаттаченной временной БД (может быть в памяти или на диске, так же как и любая другая БД). Но у вас почему-то не вызывает вопросов возможность транзакции изменять данные атомарно в основных и временных таблицах... Рекомендую прочитать про Berkeley DB Environment http://www.oracle.com/technology/documentation/berkeley-db/db/ref/env/intro.html Фактически все СУБД основываются на одних и тех же принципах, только в сложных системах базовые идеи сложно увидеть сквозь наслоения различных интерфейсов. ... |
|||
:
Нравится:
Не нравится:
|
|||
27.07.2009, 20:15 |
|
|
start [/forum/topic.php?fid=54&msg=36107744&tid=2009439]: |
0ms |
get settings: |
10ms |
get forum list: |
13ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
100ms |
get topic data: |
9ms |
get forum data: |
2ms |
get page messages: |
45ms |
get tp. blocked users: |
1ms |
others: | 340ms |
total: | 526ms |
0 / 0 |