Как загрузить индексы на сервер Teradata с помощью BTEQ

Я пытаюсь загрузить таблицу с уникальным индексом для сервера Teradata с помощью утилиты BTEQ. И я получаю следующую ошибку: Failure 3706 Syntax Error: ожидание чего-то между словом «ID» и ключевым словом «ASC». Похоже, что BTEQ не принимает ключевые слова ASC и DESC. Однако синтаксис действителен, и если я запускаю его в Teradata Studio, он работает, создается индекс.

СОЗДАТЬ УНИКАЛЬНЫЙ ИНДЕКС IDX_UNIQUE_TEST_INDEX

(ID ASC) НА TEST_INDEX;

Может ли кто-нибудь помочь мне найти решение. Любая помощь очень ценится.


person MaterialGirl    schedule 15.07.2013    source источник
comment
Это утверждение в сценарии BTEQ, которое вызывает ошибку? Если нет, можете выложить сценарий BTEQ?   -  person Rob Paller    schedule 15.07.2013
comment
Роб, я запускаю сценарий bteq из файла test_index.bat, который выглядит так: C: \ Program Files (x86) \ Teradata \ Client \ 13.10 \ bin \ bteq.exe ‹test_index_ddl.bteq;   -  person MaterialGirl    schedule 15.07.2013
comment
test_index_ddl.bteq выглядит как .logon имя_сервера / dbc, dbc; БАЗА ДАННЫХ twm_results; .run FILE = test_index_ddl.sql; .run FILE = test_index_idx.sql; .выйти; и, наконец, test_index_idx.sql выглядит как CREATE INDEX IDX_TEST_INDEX (NAME ASC, AGE ASC) ON TEST_INDEX; СОЗДАТЬ УНИКАЛЬНЫЙ ИНДЕКС IDX_UNIQUE_TEST_INDEX (ID ASC) НА TEST_INDEX;   -  person MaterialGirl    schedule 15.07.2013


Ответы (1)


Поскольку в любом индексе Teradata нет ASC или DESC, Teradata Studio, вероятно, удаляет их перед выполнением запроса :-)

Вы можете проверить DBQL, что на самом деле отправлено.

person dnoeth    schedule 15.07.2013
comment
Dnoeth, большое спасибо за ваш ответ. Правильно, Teradata не поддерживает ключевые слова ASC / DESC в операторе CREATE INDEX согласно документации. А в Teradata Studio 14.0 вроде не работает. - person MaterialGirl; 16.07.2013