加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

我的Oracle技术笔记

发布时间:2020-12-12 15:31:35 所属栏目:百科 来源:网络整理
导读:ORACLE添加数据库连接的方法 在:{安装目录}db_1NETWORKADMIN下面 打开 tnsnames.ora 文件 添加类似于下面的字符串: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 rdtest= (DESCRIPTION= (ADDRESS_LIST= (ADDRESS=(PROTOCOL=TCP)(HOST=11.6.31.120)
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 rdtest=(DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=TCP)(HOST=11.6.31.120)(PORT=1422)))(CONNECT_DATA=(SID=utf10gt1)(SERVER=DEDICATED)))WEBCB=(DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=TCP)(HOST=11.6.14.115)(PORT=1422)))(CONNECT_DATA=(SERVICE_NAME=xxb2b)(SERVER=DEDICATED)))

上面就添加了rdtest和WEBCB两个连接。


Oracle回收站功能,彻底删除表(purge recyclebin)

一、清除方法如下:

1、purge tableorigenal_tableName;

purge indexorigenal_indexName;

2、show recyclebin;

purgerecyclebin;

二、查询垃圾信息:

select * fromuser_recyclebin;

三、删除表结构

droptable t_order_info

删除table不进入recycle的方法:

drop tabletableNamepurge;

删除表结构,并且 级联删除外键droptable t_order_info cascadeconstraints;

flashbacktable t tobefore drop;


快速彻底的清空表:(相比delete而言,要高效) truncate tableorder_info;
分享一下,如果你的数据库满了,清数据没效果,那就 回收一下表空间吧! alter table <tablename> enable row movement; alter table <tablename>shrinkspace;

Oracle提供两者 分页查询的方式,格式如下: 方式一: Select * from (select *,rownum rn from (select * from table_name) where rownum <= 40) t where t.rn > 20; 方式二:select * from (select *,rownum rn from (select * from table_name) ) t where t.rn between 20 and 40;

这两种方式中第一种的效率比第二种的效率高,因为oracle有自带CBO基于成本的优化器,可以将第二层的查询查询条件推到内层查询条件中去,已提高内层查询的执行效率。

A=select rownum rn from (select * from user) where rownum<=40

select * from (A) t where t.rn>20;

可以理解为:

从自己表的副本中查询rownum<40的数据,并保存到视图A中,

并把rownum映射成rn(目的是在新视图A中使用一个与rownum不重名的字段)

然后在A表中查找rn>20的数据。

在数据库中建立表,并将相应查询返回的数据插入至新建表中。但查询相关表的索引、主键等不会复制到新建表中!

语法 CREATE table table_name as select query 示例: 备份整个订单表(表结果及数据)到order_back表 CREATE TABLE order_back as select * from order;

查看Oracle连接的session

select OSUSER,MACHINE,COMMAND,TERMINAL,ACTION,MODULE,LOGON_TIME fromsys.v_$sessionwhere username='HUOLP'

常用Oracle语句

select name fromv$tablespace;

select SEGMENT_NAME fromdba_segmentswhere TABLESPACE_NAME='ZOLLTY_IDX1' GROUP BY SEGMENT_NAME;

DROP TABLESPACEZOLLTY_DATINCLUDING CONTENTS AND DATAFILES;


create tableadmin_user(id number(9) not null primary key,name varchar2(20) not null);

renameadmin_user to myuser;

comment on table order is ‘订单表’;

增加列

alter table DCM_RULE add RULESCOPE VARCHAR2(18); 修改列 alter table DCM_RULE modify RULETYPE varchar2(18); 删除列 alter table EMP drop column user_name

alter tableadmin_user modify name varchar2(30);

alter table user rename to new_table_name; alter table order add create_date; alter table report_task modify serviceid varchar2(30);

grandinsert on t_order_info to zollty;

revokeall on t_order_info from zollty;

create sequenceT_ORDER-INFO_SEQ

minvalue 1000

maxvalue 9999

start with 1001

increment by 1

cache 20

cycle;

number(10,2) ---2位小数点

number(1) ---

number ---长度1~38

date

getTimeStamp

to_date('2012-8-21','yyyy-MM-dd')

yyyy-MM-dd HH:mm:ss--HH代表24小时制,hh代表12小时制

Oracle里面写作yyyy-MM-dd hh24:mm:ss

clob大对象形式存放(指针形式)

blob寸二进制对象,声音、图片

==============

substr(a,i,length)

concat(a,b,c..)

init(a)首字母大写

to_date

to_char

length(a)

nvl(a)空值函数

--nvl(name,'admin')--如果为空则返回admin

upper、lower(a)

round(a,i)

sum(a)

=====================

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

ORACLE添加数据库连接的方法

在:{安装目录}db_1NETWORKADMIN下面

打开tnsnames.ora文件

添加类似于下面的字符串:

    推荐文章
      热点阅读