Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Базы";
Текущий архив: 2004.12.26;
Скачать: [xml.tar.bz2];

Вниз

Перестройка индексов при добавлении в InterBase c помощью ХП   Найти похожие ветки 

 
AUS_r4nd0m ©   (2004-11-23 19:31) [0]

Доброго времени суток. Подскажите, надо написать ХП добавления записи с перестройкой индесков, что-то типа
SET TERM ^ ;
CREATE PROCEDURE AddFirm (pNameFirm varchar(40))
AS
 BEGIN
  ALTER INDEX indFirmName DEACTIVATE;
   INSERT INTO Firm (NameFirm) VALUES (:pNameFirm);
  ALTER INDEX indFirmName ACTIVATE;
END^
SET TERM ; ^


Ошибка возникает на 4 строке. Это можно как-нибудь по другому записать? И вообще в перестройке индексов есть смысл?
Заранее спасибо.


 
Johnmen ©   (2004-11-24 00:39) [1]

Нормальная ошибка. Законная.
Т.к. если заглянуть в справочное руководство, то можно вычитать, что применение DDL запросов в процедурах и триггерах недопустимо.


 
DrPass ©   (2004-11-24 00:46) [2]


> И вообще в перестройке индексов есть смысл?

Однозначно, нет - перестройка индексов при каждом добавлении записей по смыслу (и по эффективности) аналогична дефрагментации диска после копирования каждого файла. Время от времени (это зависит от интенсивности работы с базой) отключай всех пользователей и делай backup/restore


 
Deniz ©   (2004-11-24 06:45) [3]

> DrPass ©   (24.11.04 00:46) [2]
Для перестройки индексов не обязательно backup/restore, достаточно собрать статистику.


 
AUS_r4nd0m ©   (2004-11-24 14:56) [4]

> DrPass
как делать backup/restore?

> Deniz
что значит собрать статистику? и как это сделать?


 
Виталий Панасенко   (2004-11-24 15:48) [5]

Я извиняюсь - а на х.. эти манцы ? Что, индекс станет не актальным ?


 
Виталий Панасенко   (2004-11-24 15:51) [6]

сорри, "актуальным"


 
Johnmen ©   (2004-11-24 15:55) [7]

>Виталий Панасенко  

Это типа для ускорения вставки...


 
Sergey13 ©   (2004-11-24 16:01) [8]

2[7] Johnmen ©   (24.11.04 15:55)
>Это типа для ускорения вставки...
Одной строки? 8-)


 
Johnmen ©   (2004-11-24 16:03) [9]

>Sergey13 ©   (24.11.04 16:01) [8]

Потому и написал "типа"
:)


 
Deniz ©   (2004-11-25 07:24) [10]

> AUS_r4nd0m ©   (24.11.04 14:56) [4]
> > Deniz
> что значит собрать статистику? и как это сделать?


set statistics index INDEX_NAME


 
AUS_r4nd0m ©   (2004-11-25 19:26) [11]

Спасибо.


 
DrPass ©   (2004-11-25 20:53) [12]


> Для перестройки индексов не обязательно backup/restore,
> достаточно собрать статистику.

Для перестройки индексов - да. А для чистки и оптимизации всей базы лучше все-таки делать backup/restore


 
AUS_r4nd0m ©   (2004-11-26 00:24) [13]

>для чистки и оптимизации всей базы лучше все-таки делать backup/restore

Снова вопрос: КАК?


 
jack128 ©   (2004-11-26 02:21) [14]

в папке Bin gbak.exe -? Ну или IBExpert"ом ...


 
AUS_r4nd0m ©   (2004-11-26 19:08) [15]

Спасибо



Страницы: 1 вся ветка

Форум: "Базы";
Текущий архив: 2004.12.26;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.47 MB
Время: 0.035 c
1-1102498183
Dolphin001
2004-12-08 12:29
2004.12.26
WebBrowser charset


3-1101551289
sloug
2004-11-27 13:28
2004.12.26
DbListbox и dbgrid


14-1102245968
OneFragLeft
2004-12-05 14:26
2004.12.26
Microsoft Hotfixы


3-1101392577
kaktus
2004-11-25 17:22
2004.12.26
Delphi и MySQL


9-1093004228
Megabyte-Ceercop
2004-08-20 16:17
2004.12.26
Игра растет в памяти после каждого ГеймОвера





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский