Oracle查看表结构
目的:通过SQL进行查看表结构,因为使用PL/SQL连接工具,连接到公司的数据库上经常断开。故改为使用Navicat连接数据库,个人觉得这个查看表结构很困难。
查看表结构和约束精简
-- 查询指定表的结构
WITH tmp AS (
SELECT
table_name,
comments
FROM
user_tab_comments
WHERE
table_name = "UPPER" ('table_name')
)
select
table_name column_name, -- 其实是表名
comments data_type, -- 其实是备注信息
'' nullbale,
'表,非列' comments
FROM
tmp
UNION ALL
SELECT
t1.column_name,
t1.data_type,
t1.nullable,
t2.comments
FROM
(
(
SELECT
column_name,
data_type || '(' || data_length || ')' data_type,
nullable
FROM
user_tab_columns
WHERE
table_name = (
SELECT
tmp.table_name
FROM
tmp
)
ORDER BY
column_id
) t1
LEFT JOIN (
SELECT
column_name,
comments
FROM
user_col_comments
WHERE
table_name = (
SELECT
tmp.table_name
FROM
tmp
)
) t2 ON t1.column_name = t2.column_name
);
-- 查询表的约束
select * from USER_CONSTRAINTS where table_name = UPPER ('table_name')
其他一些相关的SQL比较杂乱
-- 查询表
-- 查询当前用户的所有表
select * from user_tables;
-- 查询所有用户的表
select * from all_tables;
-- 包括系统表
select * from dba_tables;
-- 获取表字段 all_tab_columns dba_tab_columns;
select * from user_tab_columns;
-- 获取表注释
select * from user_tab_comments;
-- 查看表字段约束
select * from USER_CONSTRAINTS where table_name = UPPER ('table_name')
-- C (check constraint on a table) C 表示 CHECK 约束。
-- P (primary key) P 表示主键
-- U (unique key) U 表示唯一
-- R (referential integrity) P 表示引用(外键)
-- V (with check option, on a view)
-- O (with read only, on a view)
-- 获取字段注释
select * from user_col_comments;
-- 查看指定用户表的表备注以及字段以及备注
SELECT
comments
FROM
user_tab_comments
WHERE
table_name = "UPPER" ('table_name');
-- 指定用户表字段
SELECT
column_name,
data_type || '(' || data_length || ')' data_type,
nullable
FROM
user_tab_columns
WHERE
table_name = UPPER ('table_name')
ORDER BY
column_id;
select * from user_col_comments where table_name = UPPER ('table_name')
Oracle查看表结构的更多相关文章
- Oracle查看表结构的方法【我】
Oracle查看表结构的方法 方法一: 在命令窗口下输入 DESC table_name; 回车 方法二: 在sql窗口下 SELECT DBMS_METADATA.GET_ ...
- ORACLE 查看表结构
select table_name from user_tables; //当前用户的表 select table_name from all_tables; //所有用户的表 select tabl ...
- Oracle查看表结构的几种方法
1,DESCRIBE 命令 使用方法如下: SQL> describe nchar_tst(nchar_tst为表名) 显示的结果如下: 名称 ...
- Oracle查看表结构的几种方法(转后加工)
1. DESCRIBE 命令使用方法如下:SQL> describe WX_ADVANCEUP (WX_ADVANCEUP为表名)显示的结果如下: 名称 ...
- oracle 查看表结构语句
desc + 表名 describe命令 列出指定表的列定义,视图或同义词,或指定函数或存储过程的详述. 语法:desc[ribe] {[模式.]对象[@链接串]} 模式 表示对象驻留的架构.如果 ...
- Oracle 查看表结构视图
-- 创建视图 CREATE VIEW VIEW_TABLEASSELECT A.TABLE_NAME, A.column_name 字段名,A.data_type 数据类型,A.data_lengt ...
- oracle查看表结构命令desc
- 查看表结构命令(mysql和oracle)
MySQL查看表结构SQL语句 = mysql查看表结构命令,如下: desc 表名; show columns from 表名; describe 表名; show create table 表名; ...
- MySQL 查看表结构
mysql查看表结构命令,如下: desc 表名; show columns from 表名; describe 表名; show create table 表名; use information_s ...
随机推荐
- 理解OAuth2
目录 理解OAuth2 Oatuh2用来做什么 Oauth2具体做法 Oauth2的流程 授权码模式 第三方引导用户跳转至认证服务器的授权页面 用户选择是否给予授权 认证服务器生成code并且让用户重 ...
- strcmp函数和memcmp函数的用法区别及联系
前言: C语言中有很多东西容易搞混,最近笔者就遇到了一个问题.这里做个记录.就是memcmp和strcmp两者的用法,这里做个对比: 功能对比: A memcmp: 函数原型: int memcmp( ...
- IT兄弟连 HTML5教程 W3C盒子模型
日常生活中所见的盒子也就是能装东西的一种箱子,如果家里的东西很多,那么就需要按类别装到不同的箱子中.网页中的内容表现也是一样的,如果页面内容比较多,又想让页面更整洁.更美观.有很好的用户体验,则也需要 ...
- Spring 框架下的 JDBC
Spring JDBC Spring 对JDBC技术规范做了进一步封装,它又叫Spring JDBCTemplate(jdbc模板技术) 纯JDBC:代码清晰的.效率最高.代码是最烦的. Spr ...
- Tomcat乱码或异常
一.控制台乱码 原因:Tomcat与Windows编码不一致导致 解决办法:首先找到conf/logging.properties文件,然后打开后找到“java.util.logging.Consol ...
- Spring Boot修改JSP不用重启的办法
在application.properties文件中添加一行代码解决. Spring Boot 2.0以上添加如下一行: server.servlet.jsp.init-parameters.deve ...
- Python的map方法的应用
Map方法,第一个参数要写一个匿名函数表达式,或者是一个函数引用,第二个第三个往后都是表达式用到的参数,参数一般是可迭代的 1.比如下面这个map方法,两个参数,第一个 lambda x: x*x是匿 ...
- 08. Go 语言包(package)
Go 语言包(package) Go 语言的源码复用建立在包(package)基础之上.Go 语言的入口 main() 函数所在的包(package)叫 main,main 包想要引用别的代码,必须同 ...
- 【洛谷5643】[PKUWC2018] 随机游走(Min-Max容斥+待定系数法+高维前缀和)
点此看题面 大致题意: 从一个给定点出发,在一棵树上随机游走,对于相邻的每个点均有\(\frac 1{deg}\)的概率前往.多组询问,每次给出一个点集,求期望经过多少步能够访问过点集内所有点至少一次 ...
- docker面试题和解答(一)
什么Docker Docker是一个容器化平台,它以容器的形式将您的应用程序及其所有依赖项打包在一起,以确保您的应用程序在任何环境中无缝运行. Docker与虚拟机有何不同 Docker不是虚拟化方法 ...