在工作中从数据库取的数据要导出来,但是发现导出的EXCEL中列名都是字段名(英文),为此搜集资料怎么把字段名变为中文名称,而发现ORACLE和SQLSERVER(用的SQLSERVER2008R2)又有所不同,具体如下:
SQLSERVER数据库:
系统表:
---获取表的相关信息
select * from SYS.OBJECTS
(说明:name:表名 object_id:表的ID)
---获取列的相关信息
select * from SYS.COLUMNS
(说明:name:列名 object_id:表的ID column_id:列的ID)
---获取字段的说明信息
select * from SYS.EXTENDED_PROPERTIES
(说明:major_id:表的ID minor_id:列的ID value:字段的说明即字段注释)
---获取表名、列名、列说明的查询语句
SELECT A.NAME AS '表名',B.NAME AS '列名',C.VALUE AS '列说明'
FROM SYS.OBJECTS A LEFT JOIN SYS.COLUMNS B ON A.OBJECT_ID=B.OBJECT_ID
LEFT JOIN SYS.EXTENDED_PROPERTIES C ON A.OBJECT_ID=C.MAJOR_ID
ORACLE数据库:
系统表:
---获取表名、列名、列的说明即字段注释 (如果在ORACLE中查询一个表中的字段注释,只需要查询这一个表就行了)
SELECT * FROM USER_COL_COMMENTS
(说明:table_name:表名 column_name:字段名称 comments:字段说明即字段注释)
---表说明相关的信息
select * from user_tab_cols
(说明:table_name:表名 column_name:字段名称)