Alexbootch, спасибо. Бум знать
Этот топик читают: Гость
Разработчик
Ответов: 26109
Рейтинг: 2124
|
|||
карма: 22 |
|
Ответов: 1891
Рейтинг: 110
|
|||
Всегда пожалуста
|
|||
карма: 0 |
|
Ответов: 5446
Рейтинг: 323
|
|||
nesco писал(а): Значит, псевдонимы столбцов при запросах не катят, я правильно понял?Почти. Если быть точным - катят, но только в пределах одного запроса. Т.е. вот это - сработает:
|
|||
карма: 1 |
|
Ответов: 16884
Рейтинг: 1239
|
|||
nesco, если свою программу не собираешься продавать за бугор и тебе очень нужны русские имена - создай сразу таблицу с русскими названиями колонок.
|
|||
карма: 25 |
|
Разработчик
Ответов: 26109
Рейтинг: 2124
|
|||
Tad писал(а): создай сразу таблицу с русскими названиями колонокА точно прокатит, вроде SQLite не поддерживал русские имена колонок, или уже поддерживает? |
|||
карма: 22 |
|
Ответов: 1891
Рейтинг: 110
|
|||
nesco, писал(а): А точно прокатит, вроде SQLite не поддерживал русские имена колонок, или уже поддерживает?Катит и с русскими именами таблиц и колонок. Вот правда насколько катит, нужно проверять. В случае с русскими именами колонок, например, колонка с названием Канал и канал не одно и тоже в отличии от английского названия Сhannel и channel, т.е. в запросах с русскими именами колонок и таблиц необходимо соблюдать регистр букв в соответстующих названиях. |
|||
карма: 0 |
|
Разработчик
Ответов: 26109
Рейтинг: 2124
|
|||
Alexbootch, Tad, кто-нибудь из вас знает -- есть ли запрос к базе очищающий динамически выделенную память, а то после чтения все базы в 40000 записей сжирается 25 Mb памяти? Правда, оно так и колеблется вокруг этого значения, но не нравится мне это.
|
|||
карма: 22 |
|
Ответов: 1891
Рейтинг: 110
|
|||
nesco, если я тебя правильно понял попробуй после чтения базы выполнить вот это:
PRAGMA default_cache_size; и почитай хелп по команде PRAGMA |
|||
карма: 0 |
|
Разработчик
Ответов: 26109
Рейтинг: 2124
|
|||
Alexbootch, это выполняется как обычный запрос?
|
|||
карма: 22 |
|
Ответов: 1891
Рейтинг: 110
|
|||
да
|
|||
карма: 0 |
|
Разработчик
Ответов: 26109
Рейтинг: 2124
|
|||
Alexbootch, спасибо.
|
|||
карма: 22 |
|
Ответов: 1891
Рейтинг: 110
|
|||
nesco, кстати с SQLite через php не рабатал?
|
|||
карма: 0 |
|
Разработчик
Ответов: 26109
Рейтинг: 2124
|
|||
Alexbootch, у нас этим Nic занимается. Я еще не занимлся, только осваиваю потихоньку, в основном Delphi-2.
А запрос прокатил нормально. Для читающей базы очень хороший запрос PRAGMA synchronous = OFF; -- проверено, существенно повышает скорость выполнения запросов поиска и вывода. |
|||
карма: 22 |
|
Ответов: 1891
Рейтинг: 110
|
|||
nesco, писал(а): ...колеблется вокруг этого значения, но не нравится мне этоТак и должно быть, т.к. перед очередным запросом выполняется автоматом PRAGMA default_cache_size;, а далее выполняется сам запрос. nesco, писал(а): Для читающей базы очень хороший запрос PRAGMA synchronous = OFF; -- проверено, существенно повышает скорость выполнения запросов поиска и вывода.С PRAGMA synchronous лучше не шутить и установить по умолчанию (как в прочем и устанавливается при создании новой базы) - PRAGMA synchronous = FULL;, а то в один прекрасный момент по закону подлости потеряешь все либо часть данных из базы. PRAGMA synchronous = OFF; можно лишь устанавливать на базы данных, которые будут работать только на CD и DVD дисках, т.е. не будут устанавливаться локально на жесткий диск либо на флеш. |
|||
карма: 0 |
|
Разработчик
Ответов: 26109
Рейтинг: 2124
|
|||
Alexbootch, у меня разделенная структура приложений. Есть сервер каналов, который пишет в базу у него PRAGMA synchronous = FULL и просмотрщик базы (отдельное приложение), у него PRAGMA synchronous = OFF он вообще ничего не пишет, только читает и ведет поиск. Я читал про этот запрос. Он ведет синхронизацию с системой и отслеживает ее крэши, это важно при записи, а считывание происходит в memory и поиск ведется уже в памяти.
|
|||
карма: 22 |
|