Вверх ↑
Этот топик читают: Гость
Ответов: 16884
Рейтинг: 1239
#721: 2011-05-17 23:16:44 ЛС | профиль | цитата
user_asm писал(а):
Юзера заходят по сетке в папку и запускают прогу-оболочку.
Юзера у себя запускают прогу, а прога, когда нужно, обращается к БД.
Как обратиться к БД nesco(помоему тебе) рассказывал. Ищите и обрящете.
------------ Дoбавленo в 23.16:
Пока отвечал, nesco повторил как.
карма: 25
Немного терпения! Дежурный экстрасенс скоро свяжется с Вами!
0
Ответов: 704
Рейтинг: 7
#722: 2011-06-09 01:38:00 ЛС | профиль | цитата
Помогите с добавлением условия на выполнение "UPDATE reakcii SET sostojanie =REPLACE(sostojanie, 'K', 'M');" только если в столбце reakcija попадается значение "001L". Как его можно примостить условием к такой команде? Может как-то так можно было бы добавить WHERE reakcija LIKE '001L'; ?
карма: 0

0
Ответов: 5446
Рейтинг: 323
#723: 2011-06-09 02:35:41 ЛС | профиль | цитата
Neo, так. Только не Like, а =
карма: 1

0
Ответов: 704
Рейтинг: 7
#724: 2011-06-09 21:44:57 ЛС | профиль | цитата
iarspider, подскажи где я туплю и почему запрос UPDATE reakcii SET mask =REPLACE(mask, '', '1^?-?-?-?-?-?-g-?-?-?-?-?-?-?') WHERE sostojanie LIKE '%+004%k'; ругается на WHERE? Столбей mask пустой, но заполнить его нужно только в строках, где в столбце sostojanie есть "+004%k". Гугл ничего умного не посоветовал.
карма: 0

0
Ответов: 16884
Рейтинг: 1239
#725: 2011-06-09 22:07:00 ЛС | профиль | цитата
Neo,наверно так
UPDATE reakcii SET mask ='1^?-?-?-?-?-?-g-?-?-?-?-?-?-?' WHERE sostojanie LIKE '%+004%k';
карма: 25
Немного терпения! Дежурный экстрасенс скоро свяжется с Вами!
1
Голосовали:Neo
Ответов: 5
Рейтинг: 1
#726: 2011-08-09 18:31:48 ЛС | профиль | цитата
Выложите, пожалуйста, свежую сборку sqlcipher
карма: 1

0
Ответов: 952
Рейтинг: 4
#727: 2011-08-23 12:31:07 ЛС | профиль | цитата
Удалить. Разобрался.
карма: 0

0
Ответов: 704
Рейтинг: 7
#728: 2011-09-21 22:15:49 ЛС | профиль | цитата
Подскажите, почему при мониторинге действий программы, постоянно идет обращение к файлу имя_базы.db-journal - NAME NOT FOUND. Это происходит каждый раз при поиске по базе банных SQLite.
карма: 0

0
Ответов: 16884
Рейтинг: 1239
#729: 2011-09-21 22:29:08 ЛС | профиль | цитата
Neo, научись задавать вопросы...
1. Почему при мониторинге действий программы, постоянно идет обращение к файлу имя_базы.db-journal
Только ты знаешь зачем ты устроил постоянное обращение к БД
2. Почему ищет имя, которого нет ? (NAME NOT FOUND )
Тебе же должно быть известно почему ищет имя которого нет.

карма: 25
Немного терпения! Дежурный экстрасенс скоро свяжется с Вами!
0
Ответов: 3889
Рейтинг: 362
#730: 2011-09-21 22:39:12 ЛС | профиль | цитата
Neo писал(а):
почему при мониторинге действий программы, постоянно идет обращение к файлу имя_базы.db-journal - NAME NOT FOUND

Это журнал транзакций, аналогичный журнал есть во многих БД и файловых системах. Если не ошибаюсь, его основное назначение - обход коллизий и повреждений базы при одновременном доступе или при сбое транзакции. Движок базы регулярно проверяет, не произошло ли что-то (например, та же коллизия или программный/аппаратный сбой, не позволивший внести изменения в базу): нет ли на диске файла журнала, нет ли в журнале записей о начавшейся операции, меняющей содержимое базы. По результатам проверки изменения либо откатываются (как минимум, на период запроса), либо применяются (если запрос не совпал с операцией записи в базу).
Для неприхотливых к целостности данных, но требующих максимальной скорости задач лучше работать в оперативной памяти. Если на чтении всё кончается не нахождением файла, то на записи без режима принудительного пропуска журнала "лишних" телодвижений просто масса. Особенно заметно ускорение будет на частых операциях замены объёмистых записей другими, тоже не маленькими, т.к. по умолчанию (база на диске, конкурентный режим) все они попадают в журнал (!).
Надеюсь, понятно объяснил?
карма: 1

1
Голосовали:Konst
Ответов: 704
Рейтинг: 7
#731: 2011-09-22 00:46:51 ЛС | профиль | цитата
1nd1g0, спасибище! Ценная информация. Плюсы кончились
карма: 0

0
Ответов: 704
Рейтинг: 7
#732: 2011-10-01 03:38:14 ЛС | профиль | цитата
Или поиск такой, или я Не могу разрулить такую задачу:
Имеется БД с редко меняющимися записями (то есть не каждую секунду ))
Я хочу занести ее в память для быстрой работы с оной.
По примеру переделал чтоб к базе в памяти присоединить базу из файла. И вроде даже все прекрасно работает. Но не пойму как мне быть, если я изменю запись в файле БД? И как вообще изменить запись в БД, если я ее прикрутил к БД в памяти? Нужно чтоб по БД в памяти велся только поиск, а при внесении изменений - записывалось в файл с присоединяемой БД и обновлялась инфа в памяти.

Пробовал дважды присоединить одну и ту же БД к памяти - пишет уже присоединено мол. Или это значит, что раз присоединено, то можно спокойно открывать файл БД и работать с ним как нужно, а изменения для БД в памяти будут браться автоматом из файла?
Вот схема, как я создаю БД в памяти и ищу по ней.
code_25312.txt
карма: 0

0
файлы: 1code_25312.txt [1.5KB] [312]
Ответов: 16884
Рейтинг: 1239
#733: 2011-10-01 08:42:09 ЛС | профиль | цитата
code_25313.txt
Neo писал(а):
Или это значит, что раз присоединено, то можно спокойно открывать файл БД и работать с ним как нужно, а изменения для БД в памяти будут браться автоматом из файла?
Ничего это не значит и само автоматом работать не будет.
карма: 25
Немного терпения! Дежурный экстрасенс скоро свяжется с Вами!
0
файлы: 1code_25313.txt [1.3KB] [287]
Ответов: 704
Рейтинг: 7
#734: 2011-10-01 15:38:07 ЛС | профиль | цитата
Tad, а каким способом обновить таблицу в памяти, при внесении изменений в файл?
------------ Дoбавленo в 15.38:
И зачем копировать запись из таблицы на диске, копировать в таблицу в памяти? Ведь работает и без копирования...
карма: 0

0
Ответов: 16884
Рейтинг: 1239
#735: 2011-10-01 16:00:51 ЛС | профиль | цитата
Neo писал(а):
Ведь работает и без копирования.
работает напрямую с диска т.е. никакого ускорения, а память у тебя просто довесок в памяти - ты её не используешь вообще.
Neo писал(а):
а каким способом обновить таблицу в памяти, при внесении изменений в файл?
INSERT, INSERT OR REPLACE, UPDATE

карма: 25
Немного терпения! Дежурный экстрасенс скоро свяжется с Вами!
0
Сообщение
...
Прикрепленные файлы
(файлы не залиты)