如何查看DB2数据库中的表结构
我从 sysibm.syscolumns
获取了答案。
Select distinct(name), ColType, Length from Sysibm.syscolumns where tbname = 'employee';
通常最简单的方法是使用DESCRIBE。
DESCRIBE TABLE MYSCHEMA.TABLE
或者DESCRIBE INDEXES FOR MYSCHEMA.TABLE SHOW DETAIL
请查看文档: DESCRIBE命令
db2 => describe table MyTableName
以下命令也可以使用:
describe SELECT * FROM table_name;
可以用任何其他select语句替换选择语句,这对于复杂的插入操作非常有用,例如使用select进行插入。
db2
命令窗口,使用以下命令连接到db2。> db2 connect to DATABASE_NAME USER USERNAME USING PASSWORD
连接成功后,请输入以下命令查看表结构。
> db2 "describe select * from SCHEMA_NAME.TABLE_NAME"
对于IBM DB2 10.7版本中的表描述,我尝试了以下方法,它运行良好。
SELECT NAME,COLTYPE,NULLS,LONGLENGTH FROM SYSIBM.SYSCOLUMNS where TBcreator =SCHEMANAME and TBNAME =TABLENAME;
1.使用db2 describe table命令
db2 describe table tabschema.tabname
2. 使用DB2的描述输出
db2 "describe select * from tabschema.tabname"
3. 使用db2look工具
db2look -d dbname -e -t tabname
4. 在 DB2 SYS_CAT 表中查找行
db2 "Select * from syscat.columns wher tabname='' and tabschema =''"
$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);
SELECT * FROM SYSIBM.COLUMNS WHERE TABLE_NAME = 'ASTPCLTEXT';
DESCRIBE TABLE Schema Name.Table Name
连接以下表以检查多个表的表描述,使用表id连接syscat.tables和syscat.columns
您还可以使用以下命令查看表上索引的详细信息 describe indexes for table . show detail
SYSIBM.COLUMNS
表格。由于列也不同,所以我使用了DSPFFD FILE(SYSIBM/COLUMNS)
来查找正确的列。 - Piro