|
Как монопольно подключиться к базе SQlite
|
|||
---|---|---|---|
#18+
Как монопольно подключиться к базе SQlite? подключение - ADODB.Connection .Mode = adModeShareExclusive - но всьо равно могут подключаться к базе другие приложения. Просьба подсказать, как заблокировать подключение к базе если уже кто-нибудь к ней подключен? ... |
|||
:
Нравится:
Не нравится:
|
|||
12.10.2018, 12:38 |
|
Как монопольно подключиться к базе SQlite
|
|||
---|---|---|---|
#18+
Явно открой транзакцию и пока не закроешь - никто другой ничего не сможет сделать. ... |
|||
:
Нравится:
Не нравится:
|
|||
12.10.2018, 13:43 |
|
Как монопольно подключиться к базе SQlite
|
|||
---|---|---|---|
#18+
Dima TЯвно открой транзакцию и пока не закроешь - никто другой ничего не сможет сделать.``` Хуже ответа быть не может. Полный трындец! Лучше бы узнал, чего топикстартеру таки нужно. Кстати, а зачем? ... |
|||
:
Нравится:
Не нравится:
|
|||
12.10.2018, 18:24 |
|
Как монопольно подключиться к базе SQlite
|
|||
---|---|---|---|
#18+
ShSergeDima TЯвно открой транзакцию и пока не закроешь - никто другой ничего не сможет сделать.``` Хуже ответа быть не может. Полный трындец! Лучше бы узнал, чего топикстартеру таки нужно. Кстати, а зачем? Ты через меня хочешь с ним общаться? Извини, не готов быть передастом, давай как-нибудь с ним напрямую общайся ))) ... |
|||
:
Нравится:
Не нравится:
|
|||
12.10.2018, 19:56 |
|
Как монопольно подключиться к базе SQlite
|
|||
---|---|---|---|
#18+
Да, как ни странно это правильный ответ, мы тут книжку переводили 21601245 и по этой теме спорили, в SQLite транзакция блокирует всю БД, т.е. монопольный доступ. ... |
|||
:
Нравится:
Не нравится:
|
|||
12.10.2018, 20:08 |
|
Как монопольно подключиться к базе SQlite
|
|||
---|---|---|---|
#18+
ShSergeЛучше бы узнал, чего топикстартеру таки нужно. Кстати, а зачем? Ну образно говоря есть connection.open работа с базой, чтение\запись connection.close нужно что-бы между Open и Close другое приложение не могло подключиться к базе. ... |
|||
:
Нравится:
Не нравится:
|
|||
12.10.2018, 20:25 |
|
Как монопольно подключиться к базе SQlite
|
|||
---|---|---|---|
#18+
Dino_zavrShSergeЛучше бы узнал, чего топикстартеру таки нужно. Кстати, а зачем? Ну образно говоря есть connection.open работа с базой, чтение\запись connection.close нужно что-бы между Open и Close другое приложение не могло подключиться к базе. Это называется транзакция. В начале делаешь BEGIN TRANSACTION в конце COMMIT Для общего развития почитай книгу 21634151 там чтения на 2-3 часа. ... |
|||
:
Нравится:
Не нравится:
|
|||
12.10.2018, 20:33 |
|
Как монопольно подключиться к базе SQlite
|
|||
---|---|---|---|
#18+
Dima T, ну нет. это монопольный доступ а не транзакция. транзакция, например, может затрагивать только нужные тебе данные [эксклюзивно]. это грубое простое объяснение ... |
|||
:
Нравится:
Не нравится:
|
|||
12.10.2018, 22:07 |
|
Как монопольно подключиться к базе SQlite
|
|||
---|---|---|---|
#18+
Я так и не понял что нужно топикстартеру. ПС SQLite - не серверная база. ... |
|||
:
Нравится:
Не нравится:
|
|||
13.10.2018, 05:15 |
|
Как монопольно подключиться к базе SQlite
|
|||
---|---|---|---|
#18+
Siemarglтранзакция, например, может затрагивать только нужные тебе данные [эксклюзивно]. В SQlite нет блокировки таблиц/страниц. Тут транзакция блокирует сразу всю БД. https://www.sqlite.org/lockingv3.html Но я немного напутал, чтобы БД сразу перешла в режим монопольного доступа надо Код: sql 1.
https://www.sqlite.org/lang_transaction.html ... |
|||
:
Нравится:
Не нравится:
|
|||
13.10.2018, 06:16 |
|
Как монопольно подключиться к базе SQlite
|
|||
---|---|---|---|
#18+
Если задача просто ускорить работу, пожертвовав надежностью в случае непредвиденного завершения работы, то Код: sql 1. 2. 3. 4. 5. 6.
... |
|||
:
Нравится:
Не нравится:
|
|||
13.10.2018, 10:06 |
|
Как монопольно подключиться к базе SQlite
|
|||
---|---|---|---|
#18+
Спасибо всем за подсказки. Буду рулить через BEGIN EXCLUSIVE TRANSACTION; ... COMMIT TRANSACTION; Хотя я хотел как Aкцесе Если базу .mdb открыть с .Mode = adModeShareExclusive то другие приложения не могут ПОДКЛЮЧИТЬЯ. connection.open - ошибка ... |
|||
:
Нравится:
Не нравится:
|
|||
16.10.2018, 10:33 |
|
Как монопольно подключиться к базе SQlite
|
|||
---|---|---|---|
#18+
С SQLite всё очень просто. Копируешь базу к себе на компьютер, делаешь, что хочешь, и публикуешь. ... |
|||
:
Нравится:
Не нравится:
|
|||
17.10.2018, 18:23 |
|
Как монопольно подключиться к базе SQlite
|
|||
---|---|---|---|
#18+
Dino_zavr, даже если использовать эксклюзивную транзакцию, то базу для чтения все равно можно будет открыть для чтения с помощью: Код: sql 1.
... |
|||
:
Нравится:
Не нравится:
|
|||
18.10.2018, 11:09 |
|
Как монопольно подключиться к базе SQlite
|
|||
---|---|---|---|
#18+
или как вариант, после открытия шифровать, перед закрытием расшифровывать, тогда однозначно никто не откроет ... |
|||
:
Нравится:
Не нравится:
|
|||
18.10.2018, 14:18 |
|
Как монопольно подключиться к базе SQlite
|
|||
---|---|---|---|
#18+
pit_alexDino_zavr, даже если использовать эксклюзивную транзакцию, то базу для чтения все равно можно будет открыть для чтения с помощью: Код: sql 1.
Можно, но не нужно. Слишком опасные это грабли. Наступать на них может только тот кто прекрасно понимает как увернуться от последствий. pit_alexили как вариант, после открытия шифровать, перед закрытием расшифровывать, тогда однозначно никто не откроет Исходники открыты, можно просто заменить все файловые функции на свои и скомпилировать. А там внутри можно любое шифрование сделать. ... |
|||
:
Нравится:
Не нравится:
|
|||
18.10.2018, 19:46 |
|
Как монопольно подключиться к базе SQlite
|
|||
---|---|---|---|
#18+
Dima T, Я всё-таки не понимаю почему нельзя скопировать файл и сделать с ним что хочешь. ... |
|||
:
Нравится:
Не нравится:
|
|||
18.10.2018, 20:10 |
|
Как монопольно подключиться к базе SQlite
|
|||
---|---|---|---|
#18+
ShSergeDima T, Я всё-таки не понимаю почему нельзя скопировать файл и сделать с ним что хочешь. Можно, но "оригинал" не будет недоступен другим, а задача поставлена именно так чтобы другие не смогли получить доступ. ... |
|||
:
Нравится:
Не нравится:
|
|||
18.10.2018, 20:21 |
|
|
start [/forum/topic.php?fid=54&msg=39716892&tid=2008424]: |
0ms |
get settings: |
9ms |
get forum list: |
13ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
44ms |
get topic data: |
8ms |
get forum data: |
3ms |
get page messages: |
57ms |
get tp. blocked users: |
1ms |
others: | 280ms |
total: | 423ms |
0 / 0 |