当前位置: 技术问答>java相关
如何将数据库表中每个字段的字段描述在JSP文件中显示出来?
来源: 互联网 发布时间:2015-05-06
本文导语: 数据库表中的每个字段我都加了描述,比如 字段名:ID 字段描述:自动编号 字段名:USER 字段描述:用户名称 我在SQL的查询分析器中运行如下语句可以在结果窗口看到每个字段的字段描述 select syscolumns.name as...
数据库表中的每个字段我都加了描述,比如
字段名:ID 字段描述:自动编号
字段名:USER 字段描述:用户名称
我在SQL的查询分析器中运行如下语句可以在结果窗口看到每个字段的字段描述
select syscolumns.name as 字段名称,systypes.name as 数据类型,syscolumns.length as 长度,syscolumns.isnullable,sysproperties.value as 字段描述 from syscolumns,systypes,sysproperties where syscolumns.id=object_id('tableName') and sysproperties.id=object_id('tableName') and syscolumns.colid=sysproperties.smallid and systypes.xtype=syscolumns.xtype
但是我该用什么办法在JSP文件中取得字段描述的值呢?
字段名:ID 字段描述:自动编号
字段名:USER 字段描述:用户名称
我在SQL的查询分析器中运行如下语句可以在结果窗口看到每个字段的字段描述
select syscolumns.name as 字段名称,systypes.name as 数据类型,syscolumns.length as 长度,syscolumns.isnullable,sysproperties.value as 字段描述 from syscolumns,systypes,sysproperties where syscolumns.id=object_id('tableName') and sysproperties.id=object_id('tableName') and syscolumns.colid=sysproperties.smallid and systypes.xtype=syscolumns.xtype
但是我该用什么办法在JSP文件中取得字段描述的值呢?
|
建立了一个名称为 userColumnShow 的视图
SELECT b.table_name, b.column_name, b.data_type, a.[value], b.is_nullable
FROM information_schema.columns b LEFT OUTER JOIN
dbo.sysproperties a ON a.id = OBJECT_ID(b.table_name) AND COL_NAME(a.id,
a.smallid) = b.column_name
然后,在程序中可以使用
select * from userColumnShow where table_name='tablename' and column_name='colname'
我觉得这样用比较方便
SELECT b.table_name, b.column_name, b.data_type, a.[value], b.is_nullable
FROM information_schema.columns b LEFT OUTER JOIN
dbo.sysproperties a ON a.id = OBJECT_ID(b.table_name) AND COL_NAME(a.id,
a.smallid) = b.column_name
然后,在程序中可以使用
select * from userColumnShow where table_name='tablename' and column_name='colname'
我觉得这样用比较方便
|
select a.COLUMN_NAME,b.COMMENTS from USER_TAB_COLUMNS a,USER_COL_COMMENTS b where a.TABLE_NAME=b.TABLE_NAME and a.COLUMN_NAME=b.COLUMN_NAME
and a.TABLE_NAME='" +UserTable+"'
你用这个语句试试
and a.TABLE_NAME='" +UserTable+"'
你用这个语句试试
|
对于数据库表中每个字段的字段描述的问题:
取系统表中的描述不怎么好,有很大的局限性,数据库的兼容性、数据的
转移都不好。
可以用两个数据字典表:d_c_table表用来记录你数据库中的所有的用户表名;d_c_field表用来记录你数据库中的所有的用户表中表对应的字段名、属性(类型、是否为空、默认值)、字段描述,进行统一管理,可以看作是系统表。
对于你的程序操作,都先经过d_c_table、d_c_field这两个数据字典对表中的数据进行操作,这样做什么都很方便了。
对于程序的通用性设计和数据移植都很方便,对以上问题很好解决了。
取系统表中的描述不怎么好,有很大的局限性,数据库的兼容性、数据的
转移都不好。
可以用两个数据字典表:d_c_table表用来记录你数据库中的所有的用户表名;d_c_field表用来记录你数据库中的所有的用户表中表对应的字段名、属性(类型、是否为空、默认值)、字段描述,进行统一管理,可以看作是系统表。
对于你的程序操作,都先经过d_c_table、d_c_field这两个数据字典对表中的数据进行操作,这样做什么都很方便了。
对于程序的通用性设计和数据移植都很方便,对以上问题很好解决了。
|
你用DatabaseMetaData.getTables(String catalog, String schemaPattern, String tableNamePattern, String[] types)应该时可以的吧