Oracle库基本操作
--oracle 获取表名称,字段
with vA as
(
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
where USER_TAB_COLS.TABLE_NAME like 'T_A_%' and USER_TAB_COLS.COLUMN_NAME like '%CHECK_USER%'
)
select 'alter table ' ||表名 ||' modify '||列名||' VARCHAR2(120) ;'
from vA --新增字段
alter table table_name add(userName VARCHAR2(255)); --设置字段不为空, 给出默认值
alert table table_name add(userName varchar2(255 CHAR) default '这是默认值' not null) ; --修改列字段长度
alter table T_A_DRUG modify DRUG_PRODUCT_CODE VARCHAR2(50); --修改列名称
alter table T_A_DRUG rename column PRODUCT_NAME to DRUG_PRODUCT_CODE; --修改列字段类型
alter table T_FILE_UPLOAD_www modify (upload_date varchar2(50)); --删除字段
alter table table_name drop column userName; --修改表名称
alter table old_table_name RENAME TO new_table_name; rename 旧表名称 to 新表名称; --删除表中已有的主键约束(有命名)
alter table students drop constraint yy; --删除表中已有的主键约束(无命名)
可用 SELECT * from user_cons_columns;
查找表中主键名称得student表中的主键名为SYS_C002715
alter table student drop constraint SYS_C002715; --向表中添加主键约束
alter table student add constraint pk_student primary key(studentid); --查看表中约束 --oracle 更改名称: --查询所有表名:
select t.table_name from user_tables t;
--查询所有字段名:
select t.column_name from user_col_comments t;
--查询指定表的所有字段名:
select t.column_name from user_col_comments t where t.table_name = 'BIZ_DICT_XB';
--查询指定表的所有字段名和字段说明:
select t.column_name, t.column_name from user_col_comments t where t.table_name = 'BIZ_DICT_XB';
--查询所有表的表名和表说明:
select t.table_name,f.comments from user_tables t inner join user_tab_comments f on t.table_name = f.table_name;
--查询模糊表名的表名和表说明:
select t.table_name from user_tables t where t.table_name like 'BIZ_DICT%';
select t.table_name,f.comments from user_tables t inner join user_tab_comments f on t.table_name = f.table_name where t.table_name like 'BIZ_DICT%'; --查询表的数据条数、表名、中文表名
select a.num_rows, a.TABLE_NAME, b.COMMENTS
from user_tables a, user_tab_comments b
WHERE a.TABLE_NAME = b.TABLE_NAME
order by TABLE_NAME; 一,查看数据库里面所有用户:
select * from dba_users;
前提是你是有dba权限的帐号,如sys,system。 二,查看你能管理的所有用户:
select * from all_users;
三,查看当前用户信息 :
select * from user_users; 1、创建存储过程
create or replace
procedure sql_test(sex in nvarchar2, out_return out sys_refcursor)
is
begin
open out_return for 'select sex,sex_name from t_a_sex';
end; 2、调用带输出列表的存储过程
var type_cur refcursor
var para nvarchar2(20)
execute :para :='';
exec pro1(:para,:type_cur);
print type_cur; -- 日期
select to_char(sysdate,'yyyy-MM-dd HH24:MI:SS') as vDate
from dual; --获取表名称、字段、等信息
with vM as
(
select * from all_col_comments
where OWNER='BYYY'
and (table_name like 'T_FILE%' or table_name like 'T_RULE%' or table_name like 'T_JOBLOG%'
or table_name like 'T_REPORT_LOG%' or table_name like 'T_A%' or table_name like 'T_E%')
and table_name not like 'T_AUTH%' and table_name not like 'T_ERROR%'
),vA as
(
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 all_TAB_COLS USER_TAB_COLS
inner join vM 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
where USER_TAB_COLS.OWNER='BYYY'
)
select *
from vA
order by 表名,列名 with vM as
(
select * from all_col_comments
where OWNER='BASE'
and (table_name like 'T_FILE%' or table_name like 'T_RULE%' or table_name like 'T_JOBLOG%'
or table_name like 'T_REPORT_LOG%' or table_name like 'T_A%' or table_name like 'T_E%')
and table_name not like 'T_AUTH%' and table_name not like 'T_ERROR%'
),vA as
(
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 all_TAB_COLS USER_TAB_COLS
inner join vM 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
where USER_TAB_COLS.OWNER='BYYY'
)
select *
from vA
order by 表名,列名
Oracle库基本操作的更多相关文章
- Oracle数据库基本操作(一) —— Oracle数据库体系结构介绍、DDL、DCL、DML
一.Oracle数据库介绍 1.基本介绍 Oracle数据库系统是美国ORACLE公司(甲骨文)提供的以分布式数据库为核心的一组软件产品,是目前最流行的客户/服务器(CLIENT/SERVER)或B/ ...
- soapUI使用-DataSource获取oracle库中的参数
soapUI使用-DataSource获取oracle库中的参数 下载mysql和oracle驱动包:http://pan.baidu.com/s/1i3sy1MH 放在Program Files\S ...
- Oracle SQL基本操作
Oracle数据库基本操作 1.概述 Oracle数据库客户端一般需要安装在服务器上,可以在服务器端操作,一般我们可以用sql developer工具远程连接到数据库,先行建立数据库,然后对表进行增删 ...
- Oracle SQL 基本操作之 用户权限管理方法
Oracle SQL 基本操作之 用户权限管理方法 最近把有关用户操作和权限管理的东西整理了一下,虽然不少博客都有过类似的整理,但是自己发现他们的内容或多或少都有些错误.于是,本人亲自对每条语句进行 ...
- Excel导入oracle库
Excel导入oracle库 建表 /*==============================================================*/ /* DBMS nam ...
- oracle库两个表关联查询时用 count 报错【我】
oracle数据库,需要对两个表进行关联查询(根据两个字段),结果发现关联后不能改为 count 获取数量,报错如下: 同样的sql换到另外一个数据库就可以(只是因为数据量在千万级,所以很慢,用时40 ...
- 黑马oracle_day01:02.oracle的基本操作
01.oracle体系结构 02.oracle的基本操作 03.oracle的查询 04.oracle对象 05.oracle编程 02.oracle的基本操作 PLSQL中文乱码问题解决1.查看服务 ...
- Oracle 数据库基本操作——用户管理与文件管理
目录: 1.初始状态 2.登录数据库 3.创建表空间 1)概念 2) 基本表空间 3)表空间管理 4.创建新用户 5.删除用户 6.用户的授权 1)定义 2)授予权限的方法 3)权限分类 4)授权注意 ...
- Oracle 数据库基本操作——实用手册、表操作、事务操作、序列
目录: 0. 参考链接与参考手册1. oracle 实用(常用操作)指令2. 数据库基本操作语法 a) 表操作 1)创建表 2)更新表 3)删除表 4)查询 b) 事务操作 c) 序列操作 1)创建序 ...
随机推荐
- linux--解决celery消息中间件带来的一系列问题
启动celery定时任务 1.celery -A OpsManage beat -l info -S django 2.celery -A OpsManage worker -l info 此时消息中 ...
- c语言心形告白代码实现
c语言心形告白代码实现 1.彩色告白 include<stdio.h> include<math.h> include<windows.h> include< ...
- html基本介绍,了解html与css,html语法和结构
一般来说,制作自己第一个网页通常书写的文字是"hello world!你好,全世界",代码如下展示: <!DOCTYPE html> <html lang=&qu ...
- leaflet结合geoserver利用WFS服务实现图层新增功能(附源码下载)
前言 leaflet 入门开发系列环境知识点了解: leaflet api文档介绍,详细介绍 leaflet 每个类的函数以及属性等等 leaflet 在线例子 leaflet 插件,leaflet ...
- linux中压缩解压缩命令
目录 gzip gunzip tar(打包压缩) tar(解包解压) zip unzip bzip2 bunzip2 gzip 解释 命令名称:gzip 命令英文原意:GUN zip 命令所在路径:/ ...
- opencv —— equalizeHist 直方图均衡化实现对比度增强
直方图均匀化简介 从这张未经处理的灰度图可以看出,其灰度集中在非常小的一个范围内.这就导致了图片的强弱对比不强烈. 直方图均衡化的目的,就是把原始的直方图变换为在整个灰度范围(0~255)内均匀分布的 ...
- 查找第K大的值
这种题一般是给定N个数,然后N个数之间通过某种计算得到了新的数列,求这新的数列的第K大的值 POJ3579 题意: 用$N$个数的序列$x[i]$,生成一个新序列$b$. 新的序列定义为:对于任意的$ ...
- 7.python虚拟环境详解
1.为什么创建虚拟环境? 和其他大多数现代编程语言一样,Python对包和模块的下载.存储以及管理有其自己的一套方法,Python的包一般都存在几个特定的地方,大部分系统包会存在sys.prefix指 ...
- 《自拍教程21》mediainfo_多媒体文件查看工具
mediainfo命令介绍 mediainfo.exe(Linux/iMac下是未带后缀的mediainfo), 是一款音视频图片文件的信息查询工具, 常用于查看多媒体文件的视频流信息,音频流信息,字 ...
- LeetCode 面试题 02.07. 链表相交
题目链接:https://leetcode-cn.com/problems/intersection-of-two-linked-lists-lcci/ 给定两个(单向)链表,判定它们是否相交并返回交 ...