XML для словаря следующий:
<yandex>
<dictionary>
<name>easymoney</name>
<source>
<odbc>
<table>supscr.easymoney</table>
<connection_string>DSN=simple</connection_string>
</odbc>
</source>
<lifetime>300</lifetime>
<layout>
<hashed/>
</layout>
<structure>
<id>
<name>ID</name>
</id>
<attribute>
<name>title</name>
<type>String</type>
<null_value></null_value>
</attribute>
</structure>
</dictionary>
</yandex>
но когда создаем dictionary, то получаем следующее полотно:
Code: 86, e.displayText() = DB::Exception: Received error from remote server /?connection_string=DSN%3Dsimple&columns=columns%20format%20version%3A%201%0A2%20columns%3A%0A%60ID%60%20UInt64%0A%60title%60%20String%0A&max_block_size=8192. HTTP status code: 500 Internal Server Error, body: � Poco::Exception. Code: 1000, e.code() = 0, e.displayText() = ODBC handle exception: Failed to get number of columns: Connection:simple
Server:simple
===========================
ODBC Diagnostic record #1:
===========================
SQLSTATE = 42S02
Native Error Code = 942
[Oracle][ODBC][Ora]ORA-00942: table or view does not exist
через isql запрос к требуемой таблице проходит, права выданы. Куда еще можно копнуть?
на правах гипотезы: таблица нормально называется (по-английски и без спецсимволов)?
может в имени таблицы не нравится точка. также может проблемы из-за заглавных символов в названии колонки ID. в этом случае можно попробовать написать так: <name>"ID"</name>
ещё по сравнению с тестом с postgresql не хватает тега <db></db> рядом с <table></table>
Обсуждают сегодня