Как просмотреть структуру таблицы в базе данных DB2
Как просмотреть структуру таблиц DB2
Ответ 1
Я получил ответ от sysibm.syscolumns
Select distinct(name), ColType, Length from Sysibm.syscolumns where tbname = 'employee';
Ответ 2
Как правило, проще всего использовать DESCRIBE.
DESCRIBE TABLE MYSCHEMA.TABLE
или
DESCRIBE INDEXES FOR MYSCHEMA.TABLE SHOW DETAIL
и др.
См. документацию: команда DESCRIBE
Ответ 3
В DB2 введите командную строку db2.
db2 => describe table MyTableName
Ответ 4
Также работает следующая команда:
describe SELECT * FROM table_name;
Если оператор select может быть заменен любым другим оператором select, что весьма полезно для сложных вставок с выбором, например.
Ответ 5
1.use db2 описать таблицу
db2 describe table tabschema.tabname
2.use db2 описать вывод
db2 "describe select * from tabschema.tabname"
Утилита 3.use db2look
db2look -d dbname -e -t tabname
4.find строки в db2 syscat
db2 "Select * from syscat.columns wher tabname='' and tabschema =''"
Ответ 6
ДЛЯ ОПРЕДЕЛЕНИЯ ТАБЛИЦЫ В IBM DB2 10.7 ВЕРСИЯ Я ПОЛУЧИЛ ЭТО И ЭТО РАБОТАЕТ СКОЛЬКО
SELECT NAME,COLTYPE,NULLS,LONGLENGTH FROM SYSIBM.SYSCOLUMNS where TBcreator =SCHEMANAME and TBNAME =TABLENAME;
Ответ 7
Пример php для iSeries (as400) db2, да, это сработало!
$i5 = db2_connect($database, $user, $password, array("i5_lib"=>"qsys2"));
$querydesc = "select * from qsys2.syscolumns where table_schema = '".$library."' and table_name = '".$table_name."' ";
$result = db2_exec($i5, $querydesc);
также, если вы просто хотите перечислить все таблицы с их описаниями
$query = "select TABLE_NAME, TABLE_TEXT from systables where table_schema = '$library' ";
$result = db2_exec($i5, $query);
Ответ 8
Вы можете получить метаданные таблицы с помощью этого запроса
SELECT * FROM SYSIBM.COLUMNS WHERE TABLE_NAME = 'ASTPCLTEXT';
Ответ 9
чтобы получить все таблицы: (вы можете ограничить схему своей схемой)
select * from syscat.tables
чтобы получить все столбцы: (где tabname = your_tabname)
select * from syscat.columns
Ответ 10
Используйте приведенное ниже описание таблицы для отдельной таблицы
DESCRIBE TABLE Schema Name.Table Name
присоединиться к приведенным ниже таблицам, чтобы проверить описание таблицы для нескольких таблиц, присоединиться к идентификатору таблицы syscat.tables и syscat.columns
Вы также можете проверить сведения об индексах в таблице, используя приведенную ниже команду описать индексы для таблицы. показать подробнее
Ответ 11
Как просмотреть структуру таблицы в базе данных db2
Откройте командное окно db2
, подключитесь к db2 со следующей командой.
> db2 connect to DATABASE_NAME USER USERNAME USING PASSWORD
Как только вы успешно подключились, выполните следующую команду, чтобы просмотреть структуру таблицы.
> db2 "describe select * from SCHEMA_NAME.TABLE_NAME"
Вышеуказанная команда отобразит структуру таблицы db2 в табличном формате.
Примечание. Тестирование на DB2 Client 9.7.11
Ответ 12
Центр управления уже получил эту функцию. Это чуть ниже списка таблиц.
Ответ 13
Самый простой способ, о котором многие уже упоминали, - сделать DESCRIBE TABLE
Однако вы также можете получить одну и ту же + дополнительную информацию из
db2> SELECT * SYSCAT.TABLES
db2> SELECT * FROM SYSCAT.COLUMNS
Я обычно использую SYSCAT.COLUMNS для поиска связанных таблиц в базе данных, где я уже знаю имя столбца:)
Еще один хороший способ, если вы хотите получить DDL конкретной таблицы или всей базы данных, использовать db2look
# db2look -d *dbname* -t *tablename* > tablestructure.out
Это создаст для вас файл ".out", который будет содержать определенную таблицу DDL script.
# db2look -d *dbname* -e > dbstructure.out
Это сгенерирует всю базу данных DDL как один файл script, обычно используется для репликации базы данных, "-e" означает указание, что вы хотите экспортировать DDL, подходящую для повторной создания той же самой настройки в новой базе данных.
Надеюсь, это поможет кому-то, кто ищет такие ответы:)
Ответ 14
У меня работает DB2/LINUXX8664 10.5.3 и describe select * from schema_name.table_name
работает для меня.
Однако describe table schema_name.table_name
не работает с этой ошибкой:
SQL0100W No row was found for FETCH, UPDATE or DELETE; or the result of a
query is an empty table. SQLSTATE=02000
Ответ 15
если вы используете студию Aqua Data, просто напишите select * из table_name и вместо нажатия execute нажмите ctrl + D.
Вы сможете увидеть описание таблицы
Ответ 16
drop view lawmod9t.vdesc
create view lawmod9t.vDesc as select
upper(t.table_cat) as Catalog,
upper(t.table_schem) as Schema,
upper(t.table_name) as table,
t.table_text as tableDesc,
c.system_column_name as colname_short,
c.column_name as colname_long,
c.column_text as coldesc,
c.Type_Name as type,
c.column_Size as size
from sysibm.SQLColumns c
inner join sysibm.sqltables t
on c.table_schem = t.table_schem
and c.table_name = t.table_name
select * from vdesc where table = 'YPPPOPL'
Ответ 17
Я использую Aquadata Studio 12.0.23, который в нескольких версиях меньше новейшего. Таким образом, ваш опыт может быть лучше моего. Я обнаружил, что лучший способ получить обзор - использовать генератор ERD. Это заняло пару часов, поскольку нормализация не была концепцией, используемой при разработке этой базы данных почти 30 лет назад. Я смог получить определения для всех объектов за несколько часов, с файлом для каждого.
Ответ 18
В OP не упоминается, обсуждается ли это DB2/400, но я обнаружил, что единственный способ получить структуру таблицы, включая описания имен столбцов, - использовать DSPFFD.
DSPFFD FILE(TBNAME) OUTPUT(*OUTFILE) OUTFILE(SOMELIB/TBDESC)
Это помещает описание TBNAME в таблицу TBDESC в библиотеке SOMELIB. Затем вы можете запросить это с помощью:
select * from SOMELIB/TBDESC
Ответ 19
Выполните следующие простые шаги:
- Выберите окно "Браузеры".
- Извлечь (развернуть) его.
- Выберите и извлеките (раскройте) список таблиц.
- Выберите нужную таблицу и извлеките ее (развернуть).
- При двойном щелчке по коду, он открывает структуру таблицы.