Главная страница
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.019 c
3-25716
Катя
2004-02-10 13:09
2004.03.09
Поиск при вводе


1-25769
tararasyk
2004-02-26 15:05
2004.03.09
Рисунок в MS Word


14-25892
Nick-From
2004-02-14 21:44
2004.03.09
институт для глухих детей


1-25740
-=[SDA]=-
2004-02-27 07:31
2004.03.09
Здравствуйте, подкинте плз примерчик вызова GetHostName...


3-25699
Karlson
2004-02-10 19:30
2004.03.09
Обязательное поле, которое стало необязательным :)