`
xpenxpen
  • 浏览: 731421 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

用user_tab_columns获取表结构

阅读更多
1.简介
Oracle里面,视图SYS.USER_TAB_COLS和SYS.USER_TAB_COLUMNS都保存了当前用户的表、视图和Clusters中的列信息。通过检索这两个表,可以方便的获取到表的结构。

利用下面这条SQL语句可以获得当前用户的表结构:
select * from user_tab_columns


2.妙用
可以利用Oracle的这个特性,做数据库的升级维护工作。
比如我们要重构一张表,增加xx字段。普通的DDL语句一般都这么写没问题:
alter table A add (xx varchar2(255))

然后如果我们做的好一点,还要求这个升级脚本是可以重复执行的。那怎么办呢?
可以写一个pl sql,逻辑是先到user_tab_columns去查询这张表是否有xx字段,如果没有,就execute immediate上面这句DDL语句。否则如果已经存在就不做事了。
分享到:
评论

相关推荐

    oracle 查询表字段明细、字段注释、表注释

    Oracle 查询表字段明细、字段注释、表注释 Oracle 数据库管理系统提供了多种方式来查询表字段明细、字段注释、表注释等信息。...通过使用系统视图和系统表,我们可以轻松地查询和管理表结构和注释信息。

    PL/SQL实现获得所有表名及列名到表

    - **PL/SQL过程**:编写一个PL/SQL块,使用游标(CURSOR)遍历`USER_TAB_COLUMNS`视图中的数据,提取表名和列名,并插入到`table_tmp`表中。 ### 二、实现步骤详解 #### 1. 创建存储结果的表 ```sql CREATE TABLE ...

    Oracle中导出表结构

    为了同时获取表结构及其对应的注释信息,可以通过连接`USER_TAB_COLUMNS`和`USER_COL_COMMENTS`两个视图来实现。 **示例查询:** ```sql SELECT ua.TABLE_NAME, ua.COLUMN_NAME, ua.DATA_TYPE, ub.COMMENTS FROM ...

    获取ORACLE 表字段,表名,以及主键之类等等的信息

    如果需要获取表的注释信息,可以使用`USER_TAB_COMMENTS`视图;如果需要获取字段的注释信息,则使用`USER_COL_COMMENTS`视图。如果想要获取其他用户的表或列的注释信息,则需要使用`ALL_TAB_COMMENTS`和`ALL_COL_...

    Oracle 常用系统表

    - **DBA_TAB_COLUMNS**、**ALL_TAB_COLUMNS** 和 **USER_TAB_COLUMNS** 提供了每个表的列定义,包括列名、数据类型等。 - **DBA_OBJECTS**、**ALL_OBJECTS** 和 **USER_OBJECTS** 包含了数据库中所有对象的信息,...

    oracle查询表的结构 和表的个数

    同样地,也可以通过WHERE子句来指定查询某个特定用户的表结构: ```sql SELECT table_name, column_name, data_type FROM dba_tab_columns WHERE owner = 'ZY'; ``` 总结来说,通过上述命令,我们可以有效地查询...

    oracle表结构查询命令

    ### Oracle表结构查询命令知识点详解 #### 一、概述 在Oracle数据库中,查询表结构是数据库管理员(DBA)及开发人员的一项基本任务。通过查询表结构,我们可以了解到表的基本信息、字段属性以及表的注释等内容。...

    Oracle常用查看表结构命令

    使用`SELECT`语句可以查看表结构,例如查看当前用户的表结构: ```sql SELECT table_name FROM user_tables; ``` 这条语句将返回当前用户所有的表名。 查看所有用户的表结构: ```sql SELECT table_name FROM all_...

    orcale查询语句

    - 使用`user_tab_columns`和`user_col_comments`,联接后可获取表的所有列名、数据类型、注释等信息。 以上查询语句可以帮助数据库管理员了解和管理Oracle数据库中的结构和数据。在实际操作中,根据需要查询的具体...

    oracle查用户所有表

    1. 使用`user_tab_comments`和`user_col_comments`联接查询,可以同时获取表名、表的注释和列的注释,这样可以得到一个完整的表结构概述。 2. 直接通过`table_name`查询特定表的信息,如`select * from sys.user_tab...

    用sql查看表结构,好不容易找到的

    在Oracle数据库中,查看表结构主要依赖于两个视图:`user_tab_columns`和`user_tab_comments`(用于获取注释)。具体SQL语句如下: ```sql -- 查询表列的详细信息 SELECT column_name, data_type, data_length, ...

    Oracle查询用户所有表的语句

    修改表结构更改表的结构: 1. 编辑表的字段 修改一个列的数据类型(一般限于修改长度,修改为一个不同类型时有诸多限制): 语法:ALTER TABLE 表名 MODIFY(列名, 数据类型); 例如: alter table skate_test ...

    从oracle生成表的数据字典方法

    例如,在本文提到的例子中使用的 `USER_TABLES`、`USER_TAB_COLUMNS` 等都是 `USER_` 类别的视图。 #### 二、数据字典生成原理 在Oracle中,可以通过查询特定的元数据视图来获取表的结构信息。为了生成Excel格式的...

    取得oracle中某表的所有字段名

    首先,你可以使用`USER_TAB_COLUMNS`系统视图来获取指定表的列信息。`USER_TAB_COLUMNS`是一个内置的系统视图,它包含了当前用户所有表的列名、数据类型、长度等信息。如果你想要获取名为`table1`的表的所有字段名,...

    Oracle MSSQL查询表结构属性

    在MSSQL中,我们可以使用SQL Server Management Studio (SSMS) 或 Transact-SQL (T-SQL) 查询语句来获取表的结构信息。以下是一些常用的T-SQL查询: 1. **查询表名和字段名**: ```sql SELECT COLUMN_NAME, DATA_...

    Oracle查看表结构命令详解

    总结来说,Oracle提供了多种命令来查看和获取数据库的表结构信息,包括表的定义、字段信息、注释等。这对于数据库管理和开发工作至关重要,可以帮助理解数据模型、编写SQL语句和调试问题。这些命令的灵活使用能够...

    如何在oracle中查询所有用户表的表名、主键名称、索引、外键等

    这可以帮助我们了解哪些列是具有唯一性的,这对于理解表结构至关重要。 ### 4. 查询所有用户表的外键信息 #### SQL 语句: ```sql -- 查询外键约束 SELECT * FROM user_constraints c WHERE c.constraint_type = '...

    根据字段名查到有该字段的所有表

    - `USER_TAB_COLUMNS`:仅列出当前用户的表信息。 - `DBA_TAB_COLUMNS`:列出数据库中所有表的信息,包括其他用户的表。 - `ALL_TAB_COLUMNS`:列出当前用户以及可访问的其他用户的表信息。 根据实际需求选择合适的...

Global site tag (gtag.js) - Google Analytics