如何通过AQT获取DB2数据库中指定列的数据类型?
获取DB2表列数据类型的正确方法(针对AQT工具)
你之前用的都是SQL Server、MySQL这类数据库的语法,DB2有自己专属的系统视图和命令,所以那些语句会报错。下面是针对DB2的正确操作方式:
一、用DB2专属SQL查询列数据类型
方法1:使用SYSCAT编目视图(最常用)
-- 替换成你的模式名和表名,注意对象名大小写(DB2默认区分大小写时需用双引号) SELECT COLNAME AS 列名, TYPENAME AS 数据类型, LENGTH AS 长度, SCALE AS 小数位数 FROM SYSCAT.COLUMNS WHERE TABSCHEMA = '你的模式名' AND TABNAME = 'Customers';
方法2:使用SYSIBM系统视图
SELECT NAME AS 列名, TYPENAME AS 数据类型, LENGTH AS 长度, SCALE AS 小数位数 FROM SYSIBM.COLUMNS WHERE TABLE_SCHEM = '你的模式名' AND TABLE_NAME = 'Customers';
二、AQT工具可视化操作
如果不想写SQL,试试AQT的对象浏览器:
- 在左侧导航找到目标数据库→模式→目标表,右键点击该表,选择「列信息」(部分版本叫「描述表」),直接查看所有列的详细属性,包括
Updated_Timestamp的数据类型。
三、正确使用DESCRIBE命令
之前报错是因为语法不对,DB2的DESCRIBE命令正确写法如下:
-- 模式名和表名需根据实际情况替换,大小写敏感时加双引号 DESCRIBE TABLE "你的模式名"."Customers";
内容的提问来源于stack exchange,提问作者Jason
相关产品推荐
相关产品推荐

