Справочник функций

Ваш аккаунт

Войти через: 
Забыли пароль?
Регистрация
Информацию о новых материалах можно получать и без регистрации:

Почтовая рассылка

Подписчиков: -1
Последний выпуск: 19.06.2015

Индексация баз

357
23 октября 2002 года
Тимофей
112 / / 20.02.2000
Подскажите кто нить, как правильно переидексировать базу. Например *.dbf ?
295
23 октября 2002 года
gray_k
356 / / 20.12.1999
Цитата:
Originally posted by Тимофей
Подскажите кто нить, как правильно переидексировать базу. Например *.dbf ?


Как dbf не знаю, наверное просто в десктопе удалить все индексы, а потом создать новые. А SQL-базы при восстановлении из бэкапа позволяют не восстанавливать индексы - есть такая опция. Включаешь её, а потом создаёшь новые индексы.

293
24 октября 2002 года
SEDEGOFF
586 / / 06.10.2002
Ты SQL знаешь? Так вот есть такая вещь как CREATE INDEX. Точный систаксис я не помню, но если сам не найдешь то могу посмотреть. То есть ты загружаешь строку в Query и выполняешь, а база индексируется.
357
24 октября 2002 года
Тимофей
112 / / 20.02.2000
Цитата:
Originally posted by SEDEGOFF
Ты SQL знаешь? Так вот есть такая вещь как CREATE INDEX. Точный систаксис я не помню, но если сам не найдешь то могу посмотреть. То есть ты загружаешь строку в Query и выполняешь, а база индексируется.


SQL я не знаю. Опиши весь путь индексации поподробнее плз. Че-то про строку я совсем не понял, что ты хотел этим сказать.

250
24 октября 2002 года
Joker
1.4K / / 20.02.2000
Цитата:
Originally posted by Тимофей

SQL я не знаю. Опиши весь путь индексации поподробнее плз. Че-то про строку я совсем не понял, что ты хотел этим сказать.


Учи.. :)) Без SQL тут никак..

293
25 октября 2002 года
SEDEGOFF
586 / / 06.10.2002
Вот например у нас есть база данных SOTR с такими полями
ID - уникальный номер
FAM - фамилия
NAME - ИМЯ
LNAME - Отчество
KOD - код подраздиления
Помещаешь на свою форму компонент Query, указываешь АЛИАС и в программе пишешь
//
String quer;
quer = "CREATE INDEX FIO ON SOTR FAM, NAME, LNAME";
Query1->SQL->Clear();
Query1->SQL->Add(quer);
Query1->ExecSQL();
Query1->Close();
//Этим мы создали сложный индекс
quer = "CREATE INDEX PODR ON SOTR KOD";
Query1->SQL->Clear();
Query1->SQL->Add(quer);
Query1->ExecSQL();
Query1->Close();
//этим мы создали простой индекс для одного поля
357
25 октября 2002 года
Тимофей
112 / / 20.02.2000
Спасибо. Попробую.

А не проще ли создавать индекс свойствами компоненты Table.

Table->AddIndex("CODindex","COD",TIndexOptions()<< ixDescending);

Только вот если он (индекс)уже есть Билдер ругается.

Зачем исплоьзовать ещё один компонент SQL?
293
25 октября 2002 года
SEDEGOFF
586 / / 06.10.2002
Table нужен что бы работать локально и тебе ни кто не мешает использовать его возможности. То что он ругается можно отловить исключениями.
Query нужен для использования твоей программы в сети. Вот например у тебя в БД 30000 записей, а тебе нужно выбрать только людей с фамилей "череззабороногузадерищенко", так вот когда ты ставиш фильтер в табле, твоя программа всеравно получает 30000 записей, что локально не страшно, а попробуй через сеть погонять такой объем, а если у тебя одновременно открыты 10 БД, получается жопа. Query возвращает именно столько записей сколько нужно.
И вообще, несмотря на удобность Table лучше для работы с большиме базами данных пользоваться компонентой Query и SQL. Так что учи SQL, там ничего сложного нет
357
25 октября 2002 года
Тимофей
112 / / 20.02.2000
В плюсях SQL я никогда не сомнивался, теорию вроде знаю немного а вот на практике никогда применять не приходилось, только на бумажках запросы писал когда в универе учился.

Подскажите где мона доку "для идиотов" по SQL скачать.
Спасибо.
250
25 октября 2002 года
Joker
1.4K / / 20.02.2000
Цитата:
Originally posted by Тимофей
В плюсях SQL я никогда не сомнивался, теорию вроде знаю немного а вот на практике никогда применять не приходилось, только на бумажках запросы писал когда в универе учился.

Подскажите где мона доку "для идиотов" по SQL скачать.
Спасибо.



mysql.ru там в доках все найдешь..

293
25 октября 2002 года
SEDEGOFF
586 / / 06.10.2002
Ну или sql.ru
Реклама на сайте | Обмен ссылками | Ссылки | Экспорт (RSS) | Контакты
Добавить статью | Добавить исходник | Добавить хостинг-провайдера | Добавить сайт в каталог