Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2004.03.09;
Скачать: CL | DM;

Вниз

ADO, DBase, индексы   Найти похожие ветки 

 
YuRock ©   (2004-02-10 14:58) [0]

Уважаемые мастера!
Давно не работал с dbf"ками, но вот, к сожалению пришлось...
Взял TADOConnection, TADOTable, в ADOConnection.ConnectionString прописал "Provider=MSDASQL.1;Persist Security Info=False;Data Source=Файлы dBASE"... Все работает, данные получаю.

Но вот пришла проблема с индексами: при попытке удаления индекса получаю сообщение: "[Microsoft][Драйвер ODBC dBase] Ошибка синтаксиса в инструкции DROP TABLE или DROP INDEX".

Делаю так: беру ADOCommand, делаю так:

CommandType := cmdText;
CommandText := "DROP INDEX "Table.dbf".IDX_NAME";
Execute;

На Execute выскакивает выше описанная ошибка. Не подскажете, в чем может быть проблема?


 
YuRock ©   (2004-02-10 15:35) [1]

Если ни у кого идей нет - то и не нужно себя утруждать. Спасибо.

Я тут нашел компонент TDBF, и он помог (его возможностей мне хватит).


 
sniknik ©   (2004-02-10 15:53) [2]

правильно не утруждайся, и синтаксис команд тоже читать не нужно, и хелп стирай сразу после установки любой программы.

Синтаксис
DROP {TABLE таблица | INDEX индекс ON таблица | PROCEDURE процедура | VIEW представление}

похоже на твое?


 
YuRock ©   (2004-02-10 16:09) [3]

> sniknik © (10.02.04 15:53) [2]

Синтаксис (из хелпа):
DROP INDEX table_reference.index_reference | PRIMARY

Пример (из хелпа):
DROP INDEX "Employee.dbf".Namex

похоже на твое? Не надо путать DROP с CREATE!


 
sniknik ©   (2004-02-10 16:31) [4]

ну так ты же не LOCAL SQL пользуешся! у тебя ADO - Файлы dBASE (драйвер ODBC или Jet в зависимости от апгрейда/системы)

смотри в другом хелпе, JETSQL40.CHM с поставкой MS офиса идет (поиши у себя на машине)


 
sniknik ©   (2004-02-10 16:33) [5]

проверь, вместо
"DROP INDEX "Table.dbf".IDX_NAME";
это
"DROP INDEX IDX_NAME ON Table";


 
sniknik ©   (2004-02-10 16:37) [6]

хотя если таблица у тебя именно так и называется (зарезервированное слово) то надо так
"DROP INDEX IDX_NAME ON [Table]";


 
YuRock ©   (2004-02-10 16:48) [7]

Спасибо, заработало (правда, не полностью), но в моем случае действительно легче и быстрее использовать TDBF, а то я смотрю, тут мне уникальный индекс делать прийдется...
В общем, извиняюсь за беспокойство, еще раз спасибо.



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

Текущий архив: 2004.03.09;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.013 c
14-25918
BlackBaracuda
2004-02-15 19:26
2004.03.09
FindWindowEx


14-25885
Andryk
2004-02-12 11:45
2004.03.09
Давайте еще раз пообсуждаем наш закон об ОСАГО


3-25705
Belkova
2004-02-10 16:58
2004.03.09
Уважаемые мастера Delphi! Подскажите, как организовать цикл по вы


7-25951
Андреев
2003-12-21 20:39
2004.03.09
Com порт


8-25827
arcoant
2003-09-19 22:45
2004.03.09
OpenGL - Shadows