获取表名:
Oracle的user_talbes用于记录了用户表信息。
select * from user_tables
获取某个表的字段:
USER_TAB_COLS中记录了用户表的列信息。
SELECT USER_TAB_COLS.TABLE_NAME as 表名,
USER_TAB_COLS.COLUMN_NAME as 列名,
USER_TAB_COLS.DATA_TYPE as 数据类型,
USER_TAB_COLS.DATA_LENGTH as 长度,
USER_TAB_COLS.NULLABLE as 是否为空,
USER_TAB_COLS.COLUMN_ID as 列序号,
user_col_comments.comments as 备注
FROM USER_TAB_COLS
inner join user_col_comments
on user_col_comments.TABLE_NAME = USER_TAB_COLS.TABLE_NAME
and user_col_comments.COLUMN_NAME = USER_TAB_COLS.COLUMN_NAME
如何从Oracle、中取得表的注释
user_tab_comments;表注释
user_col_comments;表字段注释
以上两个只能获取自己用户的表的注释信息,如果要访问自己能够访问的其他用户的表,则需要使用:
all_tab_comments;表注释
all_col_comments;表字段注释
当然,如果有DBA权限,则可以使用
dba_tab_comments;表注释
dba_col_comments;表字段注释
dba*和all*最好指定owner条件。user*没有该字段
user_tab_comments;表注释
user_col_comments;表字段注释
以上两个只能获取自己用户的表的注释信息,如果要访问自己能够访问的其他用户的表,则需要使用:
all_tab_comments;表注释
all_col_comments;表字段注释
当然,如果有DBA权限,则可以使用
dba_tab_comments;表注释
dba_col_comments;表字段注释
dba*和all*最好指定owner条件。user*没有该字段
关于Oracle与SqlServer中获取所有字段、主键、外键的sql语句 标签: 主键 外键 sql
最近在做的社会网络分析原型系统需要将多种不同数据库中的表的字段、主外键信息读出,实现这些功能费了不少功夫,记录下来以备用吧
Oracle:
查询某个表中的字段名称、类型、精度、长度、是否为空
select COLUMN_NAME, DATA_TYPE, DATA_PRECISION, DATA_SCALE, NULLABLE
from user_tab_columns
where table_name = 'T_CUST'
查询某个表中的主键字段名
select col.column_name
from user_constraints con, user_cons_columns col
where con.constraint_name = col.constraint_name
and con.constraint_type='P'
and col.table_name = 'YourTableName'
查询某个表中的外键字段名称、所引用表名、所应用字段名
select distinct (col.column_name), r.table_name, r.column_name
from user_constraints con,
user_cons_columns col,
(select t2.table_name, t2.column_name, t1.r_constraint_name
from user_constraints t1, user_cons_columns t2
where t1.r_constraint_name = t2.constraint_name
and t1.table_name = 'YourTableName') r
where con.constraint_name = col.constraint_name
and con.r_constraint_name = r.r_constraint_name
and con.table_name = 'YourTableName'
分享到:
相关推荐
获取oracle 表字段,表名,以及主键之类等等的信息,获取oracle 表字段,表名,以及主键之类等等的信息获取oracle 表字段,表名,以及主键之类等等的信息获取oracle
### 获取Oracle表字段、表名及主键等信息 在Oracle数据库管理中,查询表的结构信息是一项基本而重要的任务。这些信息包括表名、字段名、数据类型、字段长度、是否可为空以及主键等。掌握如何有效地获取这些信息对于...
根据提供的标题、描述以及部分代码内容,我们可以了解到这篇文章主要探讨的是如何在Oracle数据库中查询所有用户表的相关信息,包括表名、主键名称、索引、外键等元数据信息。接下来,我们将对这些知识点进行详细的...
根据提供的标题、描述、标签及部分内容,我们可以了解到这段Oracle脚本的主要目的是为了通过输入一个特定的表名来获取该表中的所有字段名称。下面将详细解释这个脚本的工作原理及其在Oracle数据库环境中的应用场景。...
Oracle获取用户下所有表名 获取表所有的列名及数据类型 两个SQL查询语句
Oracle 是一个强大的关系数据库管理系统,提供了多种方式来添加备注信息到表字段或视图字段中。在本节中,我们将详细介绍如何使用 Oracle 的 Comment 机制来添加备注信息到表字段或视图字段中。 添加备注信息到表字...
这些方法返回的结果集可以用来获取表名、表注释、字段信息等。例如: ```java DatabaseMetaData metaData = conn.getMetaData(); ResultSet tablesRs = metaData.getTables(null, null, "%", new String[]{"TABLE"}...
### 如何在Oracle中修改表名 在Oracle数据库管理中,有时我们可能需要更改已创建表的名称。这种需求可能是由于项目初期命名不规范、业务调整或是其他原因导致的。更改表名通常有两种方法:通过SQL语句进行修改或者...
小编今天在建一个Oracle数据库表时,提示如下表名长度超过了最大值了。错误如下: 代码如下: 错误报告: SQL 错误: ORA-00972: 标识符过长 00972. 00000 – “identifier is too long” *Cause: An identifier ...
Oracle数据库是全球广泛使用的大型关系型数据库管理系统之一,它提供了丰富的SQL语法支持,包括标准的SQL语法以及一些特有的Oracle扩展。SQL语句生成器针对Oracle的特点,能够生成符合其语法的SELECT、INSERT、...
Oracle 存储过程截取表字段中带分号的信息 Oracle 存储过程是 Oracle 数据库中的一种程序单元,它可以实现复杂的业务逻辑和数据处理。在本文中,我们将讨论如何使用 Oracle 存储过程来截取表字段中带分号的信息。 ...
在Oracle数据库中,判断表名是否存在是常见的数据库管理任务,这通常涉及到SQL查询或使用数据库的系统视图。以下是一些关于如何在Oracle中检查表是否存在的方法。 首先,你可以使用`ALL_TABLES`或`USER_TABLES`系统...
mysql与oracle 表字段定义比较,了解两个数据库区别
1、备份Oracle数据库表时添加动态时间戳,解决了ORA-00922: missing or invalid option 错误。 2、备份表结构和数据,还备份索引、序列、触发器等对象,提高了备份速度。但需要手动备份原始表的序列。 3、备份策略是...
在Oracle数据库管理中,了解如何查询表信息,包括获取表字段、字段注释以及表的元数据,是数据库管理员和开发人员日常工作中不可或缺的一部分。以下将详细解释这些查询语句的工作原理及其背后的数据库结构。 首先,...
Oracle GoldenGate 针对表没有主键或唯一索引的解决方案 Oracle GoldenGate 是一种 数据复制和集成工具,用于在不同的数据库管理系统之间复制和集成数据。然而,在使用 Oracle GoldenGate 复制事务数据时,如果表...
### 创建Oracle数据库中表的主键和自增 在Oracle数据库中实现自增主键是一项常见但非常重要的功能。这不仅有助于确保数据的唯一性,还能简化开发过程中的某些环节,尤其是在需要自动增长的主键时。下面将详细介绍...
以下是一个简单的示例,展示了如何使用JAVA和JDBC从Oracle数据库中获取字段信息: ```java import java.sql.*; public class OracleTableInfoExtractor { public static void main(String[] args) { String url ...
总之,在Oracle数据库中批量添加主键是一个涉及多个步骤的过程,包括查找无主键的表、编写和执行`ALTER TABLE`语句以及处理可能存在的重复数据。这个过程需要谨慎操作,确保数据的完整性和一致性。同时,合理规划和...