Форум: "Базы";
Текущий архив: 2004.01.26;
Скачать: [xml.tar.bz2];
ВнизVFPOLEDB: как создать неуникальный индекс? Найти похожие ветки
← →
sokohigh (2003-12-29 16:44) [0]Как использовать VFP-команду "INDEX ON..."?
Вот это не проходит:
ADOConnection.Execute("USE t1; INDEX ON Field1 TAG F1");
- то, что после точки с запятой игнорируется. USE и INDEXS ON по отдельности тоже не работают.
← →
Stas (2003-12-29 16:46) [1]MSSQL, dBase, FoxPro - ОГО !
← →
Stas (2003-12-29 16:47) [2]Удалено модератором
← →
sniknik (2003-12-29 16:58) [3]> VFPOLEDB: как создать неуникальный индекс?
не получится, VFP принципиально не создает индексы вне базы, т.е. если есть база .dbc то можно на файлах отдельно от базы нельзя.
есть всякие извращения с alter index но по моему тоже с файлами не не работают.
(вообще разбирал только ODBC VFP driver, могут быть отличия)
← →
sokohigh (2003-12-29 17:08) [4]
> sniknik ©
VFP принципиально не создает индексы вне базы
Неправда ваша - еще как создает. Не создает вне базы constrants (primary и foreign keys), а обычные индексы - пожалуйста.
Моя проблемка в том, что команды VFP CREATE TABLE и ALTER TABLE делают только candidate-индексы, т.е. уникальные, а мне нужен как раз неуникальный, а VFP под рукой нет.
← →
sniknik (2003-12-29 17:19) [5]> Неправда ваша - еще как создает.
может быть (я же специально оговорил что тестил ODBC VFP, у тебя OLEDB провайдер с установкой фокса наверняка, ты попробуй на машине без этой установки, а получится как с BDE там работает а там нет)
смотри сюда
http://support.microsoft.com/default.aspx?scid=kb;en-us;163396
возможно описанный там способ тебе пойдет.
обрати внимание на
Currently, it is not possible to create a regular index with the INDEX ON command on a table through the Visual FoxPro ODBC driver, either by SQL Pass Through or a Default Value, Rule, or Trigger code.
т.е. раньше поддерживало после перестали, но раньше я знаю и foxpro в jet входило...
← →
sokohigh (2003-12-29 17:35) [6]
> sniknik ©
Спасибо за линк - с "INDEX ON" все стало понятно - можно забыть...
А индексы и через ODBC VFP без .dbc можно создавать, но только уникальные: CREATE TABLE t1 (f1 i UNIQUE, f2...
← →
sokohigh (2003-12-29 17:43) [7]Вот как все-таки создать неуникальный индекс (спасибо sniknik ©):
"CREATE TABLE x6 (col1 c(1), col2 c(3), ;
FOREIGN KEY col2 TAG col2 REFERENCES x6)
и пояснения MS:
The command passed tries to create a Persistent Relationship to itself and Visual FoxPro completed a portion of the process before it realized it could not complete the entire operation. The byproduct of the command failing is the index tag.
ну хоть так...
← →
sniknik (2003-12-29 17:55) [8]> Вот как все-таки создать неуникальный индекс (спасибо sniknik ©):
> "CREATE TABLE x6 (col1 c(1), col2 c(3), ;
FOREIGN KEY col2 TAG col2 REFERENCES x6)
ты всетаки проверь на машине с неустановленным.
пытаюсь у себя (у тебя так понял прошло :)
CREATE TABLE x6 (col1 c(1), col2 c(3), FOREIGN KEY col2 TAG col2 REFERENCES x6)
получаю
EOleException : [Microsoft][ODBC Visual FoxPro Driver]Feature is not supported for non-.DBC tables
(без базы делаю на отдельной таблице, все логично)
еслиб проходило то давно бы по той ссылке получилось, возможно все дело в твоем OLEDB провайдере, больше позволяет. (а вот уникальное прошло, хотя больше чем уверен раньше, когда разбирался не проходило, с той же ошибкой. (чего изменилось?), апдейты с тех пор конечно делал но что повлияло... сейчас хрен разбереш)
← →
sokohigh (2003-12-29 18:09) [9]Рано обрадовался - нету "byproduct of the command failing". Таблицу создает, а побочный продукт - т.е. индекс - нет :(
← →
sniknik (2003-12-29 18:27) [10]> Таблицу создает, а побочный продукт - т.е. индекс - нет :(
аналогично
я после своего глюка
Feature is not supported for non-.DBC tables
тем не менее табличку наблюдаю.
Страницы: 1 вся ветка
Форум: "Базы";
Текущий архив: 2004.01.26;
Скачать: [xml.tar.bz2];
Память: 0.47 MB
Время: 0.007 c