[英]Getting a column's data type in DB2 via AQT
我正在尝试通过 AQT 获取 DB2 db 中列的数据类型。 我使用以下方法都没有成功(他们都说 sys.columns/information_schema.columns/etc 未定义)列的名称是 Updated_Timestamp
SELECT *
FROM INFORMATION_SCHEMA.COLUMNS
WHERE TABLE_NAME = N'Customers'
SELECT * FROM sys.columns WHERE object_id = OBJECT_ID('dbo.yourTableName')
SELECT o.Name, c.Name
FROM sys.columns c
JOIN sys.objects o ON o.object_id = c.object_id
WHERE o.type = 'U'
ORDER BY o.Name, c.Name
exec sp_help 'table_name'
show columns from 'dbname.tablename'
SELECT name
FROM sys.columns
WHERE object_id = OBJECT_ID('TABLE_NAME')
每当我尝试使用 desc 和 describe 时,我都会收到一条错误消息,提示 desc following desc is not valid,但语句中只有 1 个 desc ...行”,没有其他选项。
Db2里面没有information_schema,但是还有其他类似的表/视图。 如果你在 LUW 上,你可以使用:
SELECT *
FROM syscat.tables
WHERE tabname = 'Customers'
您可以在CATALOG VIEWS找到更多关于目录的信息。 有关列SYSCAT.COLUMNS的信息
对于您的其他查询,我猜:
SELECT *
FROM syscat.columns
WHERE tabschema = '...'
AND tabname = '...'
AND colname = 'UPDATED_TIMESTAMP'
Db2 中的 EXEC 是 CALL,但我不确定 sp_help 的作用以及是否有对应项。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.