oracle中number对应java数据类型
原文链接:https://www.cnblogs.com/yadongliang/p/7727930.html
数据库中为number类型的字段,在Java类型中对应的有Integer和BigDecimal都会出现;
经测试发现当数据库为sql server和DB2时,用getObject()取出来时Integer类型,但是Oracle 中取出来就会是Integer或者BigDecimal类型。原因是oracle与java类型对应于number长度有关。
遇到该类型问题,若要判断每个数据库和数据库字段长度不同对应的java数据类型不同太过烦琐,可采用getString()来取值,统一先转为string来判断
查询所有用户
SELECT t.username AS "dbName" FROM all_users t
oracle根据所属用户查询表名注释
SELECT
t.owner as "dbName",
t.table_name as "code",
t.comments as "tableName "
FROM
all_tab_comments t
WHERE
t.table_type = 'TABLE'
AND t.owner = 'JEESITE'
oracle根据所属用户查询视图名和注释
SELECT
t.table_type tableType,
t.owner as "dbName",
t.table_name as "code",
t.comments as "tableName "
FROM
all_tab_comments t
WHERE
t.table_type = 'VIEW'
AND t.owner = 'JEESITE'
通过所属用户 和表名查询字段信息
--表字段信息 SELECT
t.table_schema AS "dbName",
a.table_name AS "tableCode",
a.column_name AS "fieldCode",
a.data_type AS "dataType",
f.comments AS "fieldName"
FROM
all_tab_columns a
INNER JOIN all_col_comments f ON a.OWNER = f.OWNER
AND a.table_name = f.table_name
AND a.column_name = f.column_name
WHERE
a.OWNER =?
AND a.TABLE_NAME =?