У меня много таблиц и баз данных. в большинстве таблиц есть пустые места, и столбец таблицы не имеет описательного имени. Может ли кто-нибудь помочь мне получить данные оттуда? Благодарность
Нужна помощь, чтобы получить данные из системы as400
Ответы (4)
Взгляните на эту ссылку.
Для целей документации здесь находится ключевая информация.
Если вам нужно найти одно поле или один файл, следуйте этому коду на SQL:
Select * from Syscolumns
or
Select * from Systables
Я считаю, что конкретной библиотекой для этого является QSYS2
.
Обновите, чтобы добавить маршруты с помощью F.R.O.G.:
- Подключиться к вашему серверу.
- На вкладке DB2 выберите Файл | Новый.
- В средней панели введите оператор SQL.
Select * from QSYS2.Syscolumns where table_schema = 'LIBRARY'
- нажмите Ввод
- Заявление будет запущено. При необходимости сузьте результаты.
- Как только вы получите желаемые результаты, вы можете щелкнуть правой кнопкой мыши на нижней панели и просмотреть там свои параметры.
Если у вас есть клиентский доступ (или доступ к iSeries), у вас есть инструмент под названием «Перенос данных с сервера iSeries». Это позволит вам легко выгрузить все данные в CSV или тип файла по вашему выбору.
Другой вариант — использовать CPYTOIMPF
. В Интернете есть тонна документации по этому инструменту.
Третий вариант — F.R.O.G. для IBM i5. Это бесплатный инструмент, который позволяет запускать операторы SQL. Затем вы можете экспортировать данные в CSV.
Мне пришлось сделать именно это давным-давно, и в итоге я использовал очень грубое решение - я использовал эмулятор терминала, который имел функцию записи экрана, а затем выгрузил данные AS400 на терминал. Затем я написал простую программу, которая брала захваченный сеанс терминала и отфильтровывала текстовые поля в базу данных. Это было некрасиво, но это было просто для одноразового экспорта данных в новую систему, и самое главное, это работало.
Этот оператор извлечет все поля и имена полей из всех файлов в библиотеке.
Select system_column_name, column_name, system_table_name, table_name, column_text, column_heading from QSYS2.Syscolumns where table_schema = 'LIBRARY';