После перенастройки базы данных на новый сервер DB2 / 400 метки таблиц и столбцов больше не доступны.Какие настройки сервера включить ..? - PullRequest
0 голосов
/ 05 декабря 2018

У нас есть стороннее приложение DB2 / 400, которое является ядром нашего бизнеса.Недавно он был перенесен с нашего частного сервера с AS400 / i v6r1 на Power7 на размещенную облачную службу с AS400 / i v7r3 на Power9.

С момента миграции клиенты SQL не могут видеть TABLE_TEXT или COLUMN_TEXT при просмотре таблиц в проводнике баз данных любого типа.В большинстве случаев текст должен отображаться в разделе «Замечания» или «Описание» при просмотре таблиц или столбцов в проводнике, но больше не отображается.

Даже IBM Data Studio не будет отображатьданные в столбцах, но они предоставляют информацию, скрытую глубоко и неудобную для доступа.

Какие параметры DB2 Server используются для предоставления этих метаданных клиентам SQL .. ??Я искал на сайте IBM, но куча ответов ошеломляет.

Я хотел бы заранее получить эту информацию, прежде чем обсуждать эту проблему с нашим хостинг-провайдером.Они предоставляют ODBC / JDBC-соединение «в основном не поддерживается», но я надеюсь, что они рассмотрят вопрос об оказании нам помощи в решении этой проблемы, если я смогу описать настройки сервера как можно подробнее.

Чтобы было ясно, я ищу метки из операторов DDL, например:

LABEL ON TABLE  "SCHEMA1"."TABLE1"           IS 'Some Table Description';
LABEL ON COLUMN "SCHEMA1"."TABLE1"."COLUMN1" IS 'Some Column Desc';

Клиенты могут не иметь доступа к меткам, но следующие запросы SQLспособны сделать это:

SELECT  TABLE_SCHEMA, TABLE_NAME, TABLE_TEXT
FROM    QSYS2.SYSTABLES
WHERE   TABLE_SCHEMA = 'SCHEMA1'
AND     TABLE_NAME   = 'TABLE1'  

SELECT  TABLE_SCHEMA, TABLE_NAME, COLUMN_NAME, COLUMN_TEXT
FROM    QSYS2.SYSCOLUMNS
WHERE   TABLE_SCHEMA = 'SCHEMA1'
AND     TABLE_NAME   = 'TABLE1'  

Я пробовал клиенты и драйверы, перечисленные ниже, и ни один из них не может получить доступ к меткам для таблиц или столбцов.Я прочитал много постов в StackOverflow и в других местах и ​​перепробовал множество настроек в клиентах и ​​драйверах, но ничего не помогло.Кажется очевидным, что это проблема на новом сервере.

Клиенты:

  • DBeaver 5.2.5 (мой предпочтительный клиент) (очень)
  • Squirrel SQL 3.8.1
  • SQL Workbench 124
  • IBM Data Studio 4.1.3

Драйверы:

  • JTOpen 6.6
  • JTOpen 7.6 (с последней загрузкой IBM Data Studio)
  • JTOpen 9.5

Ответы [ 3 ]

0 голосов
/ 06 декабря 2018

В SquirrelSQL 3.9 и JtOpen вам необходимо выбрать два параметра в свойствах драйвера:

remarks = true
extended metadata = true

В новой конфигурации сеанса проверьте метаданные SQL / Display и вуаля: Squirrel with metadata in column names

Проверено с V7R1, с комментариями DDS или метками SQL

0 голосов
/ 10 декабря 2018

Я разместил этот вопрос на форумах IBM и получил нужный мне ответ:

метки таблиц и столбцов больше не доступны для клиентов JDBC

Решениеустановить свойство драйвера JDBC следующим образом:

metadata source = 0

С этим изменением другие свойства, по-видимому, не нужны для моей ситуации.После установки свойства metadata source я сделал тестовые изменения для двух других, но я не увидел никакой очевидной разницы:

remarks = true
extended metadata = true
0 голосов
/ 05 декабря 2018

ODBC / JDBC используют другой набор каталогов ... расположенный в схеме SYSIBM ...

sysibm.sqltables
sysibm.sqlcolumns

ect ...

Просмотр каталогов ODBC и JDBC

...