Oracle查询当前用户下的所有表及sqlplus 设置 列宽

如果oracle服务器中装有多个数据库实例,则在用户名处输入:用户名/密码@数据库名称。如果数据库服务器不在本机上,还需要加上数据库服务器的地址:用户名/密码@IP地址/数据库名称。

[[email protected] ~]$ sqlplus scott/[email protected]/prod

SQL*Plus: Release 11.2.0.3.0 Production on Thu Apr 13 19:49:57 2017

Copyright (c) 1982, 2011, Oracle.  All rights reserved.

Connected to:
Oracle Database 11g Enterprise Edition Release 11.2.0.3.0 - 64bit Production
With the Partitioning, OLAP, Data Mining and Real Application Testing options

SQL> select table_name from tabs;

TABLE_NAME
------------------------------
DEPT
EMP
BONUS
SALGRADE

SQL> select table_name from user_tables;

TABLE_NAME
------------------------------
DEPT
EMP
BONUS
SALGRADE

类型为number的列宽是用99999或999,99的格式来设置的。

99999表示列宽设为五位数,999,99表示列宽设为6位数,因为逗号也算一位。

SQL> select * from dept;

DEPTNO DNAME   LOC
---------- -------------- -------------
 10 ACCOUNTING   NEW YORK
 20 RESEARCH   DALLAS
 30 SALES   CHICAGO
 40 OPERATIONS   BOSTON

SQL> col deptno format 9999;
SQL> select * from dept;

DEPTNO DNAME       LOC
------ -------------- -------------
    10 ACCOUNTING     NEW YORK
    20 RESEARCH       DALLAS
    30 SALES       CHICAGO
    40 OPERATIONS     BOSTON

设置varchar2类型列的宽度 这里a30表示占30个字符的宽度。

SQL> col dname format a30;  
SQL> select * from dept;

DEPTNO DNAME         LOC
------ ------------------------------ -------------
    10 ACCOUNTING        NEW YORK
    20 RESEARCH         DALLAS
    30 SALES         CHICAGO
    40 OPERATIONS        BOSTON

查看表结构 decribe tablename

SQL> select table_name from user_tables;

TABLE_NAME
------------------------------
DEPT
EMP
BONUS
SALGRADE

SQL> describe dept;
 Name        Null?    Type
 ----------------------------------------- -------- ----------------------------
 DEPTNO        NOT NULL NUMBER(2)
 DNAME          VARCHAR2(14)
 LOC          VARCHAR2(13)

SQL> describe emp;
 Name        Null?    Type
 ----------------------------------------- -------- ----------------------------
 EMPNO        NOT NULL NUMBER(4)
 ENAME          VARCHAR2(10)
 JOB          VARCHAR2(9)
 MGR          NUMBER(4)
 HIREDATE         DATE
 SAL          NUMBER(7,2)
 COMM          NUMBER(7,2)
 DEPTNO          NUMBER(2)

SQL> describe bonus;
 Name        Null?    Type
 ----------------------------------------- -------- ----------------------------
 ENAME          VARCHAR2(10)
 JOB          VARCHAR2(9)
 SAL          NUMBER
 COMM          NUMBER

SQL> describe salgrade;
 Name        Null?    Type
 ----------------------------------------- -------- ----------------------------
 GRADE          NUMBER
 LOSAL          NUMBER
 HISAL          NUMBER

时间: 2024-08-27 10:29:12

Oracle查询当前用户下的所有表及sqlplus 设置 列宽的相关文章

oracle查询当前用户下所有的表,包括所有的字段

oracle查询当前用户下所有的表,包括所有的字段 背景: ? 前两天接到一个需求,做一个展示所有表名,表备注,表数据,表字段数,点击查看按钮查看字段名和注释,支持导出. 在Oracle中,可用使用视图USER_TABLES查看当前用户有哪些表,都有多少数据: table_name:表名,field_num:表字段数,comments:表注释,count_rows(table_name):统计表数据 SELECT * FROM USER_TABLES; USER_TAB_COLUMNS:表中的所

Oracle删除当前用户下的所有表或数据

create or replace procedure pro_droptable is cursor cur is select table_name from user_tables; drop_sql varchar2(1000); begin for tbname in cur loop begin drop_sql:='drop table '||tbname.table_name;--将drop修改为truncate即可删除所有表的数据 execute immediate drop_

查询一个用户下的所有表,查询表结构。设置表列宽。

SELECT * FROM TAB; DESC 表名 设置表列宽: COL 属性名 FOR A长度;

oracle 查询当前用户下所有表结构信息

1 select t.table_name,cm.comments, c.COLUMN_NAME,ccm.comments 2 from user_tables t 3 left join user_tab_columns c on c.TABLE_NAME = t.table_name 4 left join user_tab_comments cm on cm.table_name=t.table_name 5 left join user_col_comments ccm on ccm.t

ORACLE删除当前用户下所有的表的方法

1.如果有删除用户的权限,则可以: drop user user_name cascade; 加了cascade就可以把用户连带的数据全部删掉. 删除后再创建该用户.--创建管理员用户create user 用户名 identified by 密码 default tablespace space_data(表空间名称) temporary tablespace space_temp(临时表空间名称);--授权grant connect,dba to 用户名;--修改限额ALTER USER "

oracle 删除当前用户下所有的表、索引、序列...

select 'drop table "' || table_name ||'";'||chr(13)||chr(10) from user_tables;  --delete tables select 'drop view "' || view_name||'";'||chr(13)||chr(10) from user_views;  --delete views select 'drop sequence "' || sequence_name||

oracle 中如何查询当前用户可以看到的表名、表对应的所有字段

前言:利用 oracle 的视图来查询表的相关信息. oracle 查询当前用户下的表名 + 表注释 select t.table_name tableName, f.comments comments from user_tables t inner join user_tab_comments f on t.table_name = f.table_name oracle 查询某表的所有字段 + 字段注释 + 字段类型 SELECT t.TABLE_NAME tableName, t.COL

oracle 中查询当前用户可以看到的表名、表对应的所有字段 原

转自:https://my.oschina.net/u/3783799/blog/2870207 1.oracle 查询当前用户下的表名,表注释 select t.table_name, f.comments  from user_tables t inner join user_tab_comments f    on t.table_name = f.table_name 2.oracle 查询某表的所有字段,字段注释,字段类型 SELECT a.TABLE_NAME, a.COLUMN_N

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

1.查找表的所有索引(包括索引名,类型,构成列): select t.*,i.index_type from user_ind_columns t,user_indexes i where t.index_name = i.index_name and t.table_name = i.table_name and t.table_name = 要查询的表 2.查找表的主键(包括名称,构成列): select cu.* from user_cons_columns cu, user_constr