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

Вниз

Как открыть таблицу, если индекс удален   Найти похожие ветки 

 
Alexandrda   (2002-07-31 16:09) [0]

Маги и кудесники поможите чем сможите. Есть таблица, я в ней изменяю кодировку через DbiDoRestructure, но есть одно но, индексы при этом удаляются с диска, но ссылка в таблице на них остается. Поэтому появляется ошибка "не могу найти индекс" соответственно. ЧТО ДЕЛАТЬ.


 
sniknik   (2002-07-31 16:16) [1]

перед действием которое срубает индекс удалять его самому правильно. SQL-ем ALTER TABLE DROP INDEX к примеру.
Если индекс уже удален то снять признак индексированности (dBase, FoxPro - 28-й байт в таблице считая с нуля)


 
Mike Kouzmine   (2002-07-31 16:24) [2]

Читаешь информацию о индексах, затем меняешь кодировку и, наконец, восстанавливаешь индексы.


 
Anatoly Podgoretsky   (2002-07-31 16:26) [3]

Есть такая хитрая функция, как DbiRegisterCallBack, предназначени специально для разрешения подобных ситуаций, естественно как и все в BDE справке с примером. И не хакерская, как некоторые советы.
Вот только лучше стоит разобраться с сутью, почему исчезают индексы.


 
deleon   (2002-08-01 08:58) [4]

Ты неправильно заполняещь запись CRTblDesc...не забывай перед ее заполнением залить ее с помощью FillChar() или выделяй под нее память при помощи AllocMem. У меня с индексами все в порядке :)



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

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

Наверх





Память: 0.45 MB
Время: 0.008 c
4-71414
Nickolay
2002-06-06 18:28
2002.08.22
Номер иконки в Dll или Exe файле больше их количества


1-71073
VID
2002-08-07 21:02
2002.08.22
Задний фон строки, в RichEdit


3-71040
relict
2002-08-01 11:37
2002.08.22
снова о DBGrid...


1-71127
Mars
2002-08-13 10:47
2002.08.22
Можно ли в MessageDlg писать русские заголовки?


3-71013
Fissher
2002-07-31 20:20
2002.08.22
Blob поле





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
Английский Французский Немецкий Итальянский Португальский Русский Испанский