SQLDevelop

1. 查看数据库版本 :  select  *  from   v$version;

2. 查看表结构:        desc     TABLE_NAME

3. 查看当前连接用户:  select  *  from  v$session;     (show user;  在SQLPlus中显示当前用户名)

4. 查看当前被锁定的表:

SELECT    OSUSER, machine, object_name, s.sid, s.serial#
FROM      gv$locked_object l  ,  
              dba_objects     o,    
            gv$session    s
WHERE    l.object_id  = o.object_id
AND               l.session_id = s.sid

5.   解锁被锁定的表: alter system kill session 'sid, serial#';     (e.g:  : alter system kill session  '23, 4561'  )

6.   NVL函数,处理空值null :    SELECT   id,   NVL(name, 'name_is_null')  from  STU1;   -- 如果STU1表中,name字段为null, 则用name_is_null替换.

7. 查询当前用户下是否有某个表: SELECT  COUNT(1)  FROM USER_TABLES  WHERE TABLE_NAME='STU12'; --如果存在为1, 不存在为0

8. 查询某个用户下是否有某个表:  select count(1) from dba_tables  where   owner = 'USER_NAME' and table_name = 'TABLE_NAME';

9. 查看当前用户下是否有某个(Package/Procedure/Function) :

SELECT   *  FROM  USER_PROCEDURES   OBJECT_TYPE=' FUNCTION| PROCEDURE | PACKAGE'

10. 查看所有用户  SELECT  *  FROM  all_users;

11. Sequence 的用法

create sequence  mysql
START WITH 1
INCREMENT BY 1
NOMAXVALUE
NOMINVALUE
NOCYCLE -- if CYCLE 1000 表示增长到1000之后又从1开始
NOCACHE

12.    union,  union all,  intersect,  minus 的操作

- union all  将结果集累加  (包含重复记录)
SELECT * FROM STU1
union all
SELECT * FROM STU2
-- union 将结果集累加(去除重复)
SELECT * FROM STU1
union
SELECT * FROM STU2 -- intersect 去结果集的: 交集
SELECT * FROM STU1
intersect
SELECT * FROM STU2 -- minus 去结果集的: 差集 (将第一个select所得结果, 减去 所有出现在 第二select的结果)
SELECT * FROM STU1
minus
SELECT * FROM STU2

13.   oracle  数据的五种对象:别名(synonym) ,  序列(Sequence),  视图(View),  索引(Index)  ,  族(cluser).

14.   sign(num)的用法:

if  num > 0,   sign(num) =1;

if  num =0,   sign(num) =0;

if  num <0 , sign(num) = -1;

15. decode 函数用法:

Usage#1:    decode( expression , search , result [, search , result]... [, default] )
select  decode(id,   1, '#1', 
2, '#2',
3, '#3',
4, '#4',
'#Default NO#'),
name
from STU1; -- 将id为1,2,3,4分别转义为#1,#2,#3,#4, 如果不是1,2,3,4则转换为 #Default NO# :

Usage#2:  decode((date1 - date2) - abs(date1 - date2), 0, date2, date1)  --  比较2个中大小,返回较小的一个

Usage#3: 结合sign(num)函数,判断学生成绩 >=80 为优秀, 60<=  score <80  为良好,  socre < 60 为不及格

  select  id, name ,score, decode(sign(score-80), 1 , '优秀', 0, '优秀', -1,
decode(sign(score-60), 1, '良好', 0, '良好', -1 ,'不及格') )
from STU1;

16.  trunc( number, [ decimal_places ] ) 用法(decimal_places必须为>=0的整数,将number后面多余的位数抹掉,不足的位数,保留原有的摸样)

trunc(125.815)        would return 125
trunc(125.815, 0) would return 125
trunc(125.815, 1) would return 125.8
trunc(125.815, 2) would return 125.81
trunc(125.81, 3) would return 125.81
trunc(-125.815, 2) would return -125.81
trunc(125.815, -1) would return 120
trunc(125.815, -2) would return 100
trunc(125.81, -3) would return 0 如果decimal_places 大于number 本身的小数位数,返回原数字不会加0.
如:trunc(125.81,3) would return 125.81;
如果decimal_places 为负数,那么将指定的位数设置为0

17.  查询哪些用户连接到数据库了,并且他们的IP地址分别是什么?

17-1.   缺省从 v$session 中不能直接获得客户端 IP,可以在数据库中创建一个追踪客户端IP地址的触发器:

create or replace trigger on_logon_trigger after logon on database
begin
dbms_application_info.set_client_info(sys_context('userenv', 'ip_address'));
end;

17-2.  退出之后,当用户重新登录时,可以查看IP地址

    select sid,serial#,username,program,machine,client_info
from v$session
where username is not null
order by username,program,machine;

18.  SYSTEM  用户忘记密码

D:\oracle\product\11.2.\dbhome_1\BIN>sqlplus /nolog

SQL*Plus: Release 11.2.0.1. Production on 星期四 7月  :: 

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

SQL> conn /as sysdba
已连接。
SQL> alter user SYSTEM identified by 新密码; 用户已更改。 SQL> exit

19.  复制表

ORACLE 如果表不存在:   
  只复制表结构:create table T_COLUMN_BK as select * from T_COLUMN WHERE 1<>1; //如果只是复制部分字段,可以用具体的字段列表代替 *
表结构+数据: create table T_COLUMN_BK as select * from T_COLUMN ; //如果只是复制部分字段,可以用具体的字段列表代替 * ORACLE 如果表已经存在:
复制表数据: INSERT INTO T_COLUMN_BK SELECT * FROM T_COLUMN

20.   查询当前数据库实例名称:     SELECT    instance_name   FROM   v$instance; 

21,   查询当前数据库名称:           SELECT    name      FROM   v$database;

默认情况下,数据库实例名称和数据库名称相同。

22.   NVL() 函数的使用

-- NVL(expr1,  expr2)        if   expr1==null,  return expr2;    e.g:     NVL(null, 'aa' )   ---> aa ;

if   expr1 != null,  return expr1;  e.g :     NVL('xx', 'aa' )----> xx

-- NVL2(expr,  expr1,  expr2)       if  expr == null,    return expr2;    e.g:   NVL2(null, 'aa', 'bb')   ----->bb

if  expr != null,     return  expr1;    e.g:   NVL2('xxx', 'aa', 'bb')  ---->aa

Oracle 基础知识的更多相关文章

  1. 图说Oracle基础知识(一)

    本文主要对Oralce数据库操作的基础知识进行一下梳理,以便进行归纳总结.适用于未使用过Oracle数据库的读者,或需要学习Oracle数据库方面的基础知识.如有不足之处,还请指正. 关于SQL介绍的 ...

  2. Oracle基础知识汇总一

    Oracle基础知识 以下内容为本人的学习笔记,如需要转载,请声明原文链接   https://www.cnblogs.com/lyh1024/p/16720759.html oracle工具: SQ ...

  3. Oracle 基础知识入门

    前记: 近来项目用到Oracle数据库,大学学了点,后面基本忘记得差不多了,虽然基本语法跟sql 差不多,但是oracle知识是非常多的. 这里简单说点基础知识,希望后面补上更多的关于ORacle知识 ...

  4. Oracle基础知识笔记(10) 约束

    表尽管建立完毕了,可是表中的数据是否合法并不能有所检查,而假设要想针对于表中的数据做一些过滤的话,则能够通过约束完毕,约束的主要功能是保证表中的数据合法性,依照约束的分类,一共同拥有五种约束:非空约束 ...

  5. 2008-03-18 22:58 oracle基础知识小结

    oracle 数据类型: 字段类型                 中文说明                                                  限制条件         ...

  6. oracle基础知识过一遍(原创)

    用户.角色.权限.表空间 create tablespace test1_tablespace datafile ‘test1file.dbf’ size 10m; create temporary  ...

  7. oracle 基础知识(七)----动态性能视图

    一,动态性能视图介绍 动态性能视图属于数据字典,系统管理员用户 SYS 可以访问它们.在数据库打开和使用时不断进行更新,而且它们的内容主要与性能有关.虽然这些视图很像普通的数据库表,但它们不允许用户直 ...

  8. oracle 基础知识(三)

    一.删除oracle 进入注册表到HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\OracleOraHome91TNSListener Ima ...

  9. oracle基础知识语法大全

    ORACLE支持五种类型的完整性约束NOT NULL (非空)--防止NULL值进入指定的列,在单列基础上定义,默认情况下,ORACLE允许在任何列中有NULL值.CHECK (检查)--检查在约束中 ...

  10. oracle基础知识及语法

    ORACLE支持五种类型的完整性约束 NOT NULL (非空)--防止NULL值进入指定的列,在单列基础上定义,默认情况下,ORACLE允许在任何列中有NULL值. CHECK (检查)--检查在约 ...

随机推荐

  1. cocos2dx shader

    http://www.oschina.net/question/565065_79818 Cocos2d-x 2.0 -- 从 点,线,面学起 http://blog.csdn.net/dawn_mo ...

  2. 解锁Dagger2使用姿势(二) 之带你理解@Scope

    关于Dagger2使用的基础如果你还不了解,可以参考我的上一篇文章解锁Dagger2使用姿势(一),这有助于你理解本篇文章. OK,我们在上篇文章介绍另外Dagger2使用过程中四个基本的注解,分别是 ...

  3. r2d_01

  4. (转)十分钟搞定CSS选择器

    原文地址:http://www.cnblogs.com/dolphinX/p/3347713.html 在最近的web开发中是不是就会用到一些选择器,发现很多尤其是CSS3新增的不太熟悉,在此总结一下 ...

  5. HDU-1018(简单数学)

    Big Number Problem Description In many applications very large integers numbers are required. Some o ...

  6. (转)CSS字体大小: em与px、pt、百分比之间的对比

    CSS样式最混乱的一个方面是应用程序中文本扩展的font-size属性.在CSS中,你可以用四个不同的单位度量来显示在web浏览器中的文本 大小.这四个单位哪一种最适合Web? 这个问题引起了广泛的争 ...

  7. Java 链式编程

    这里来做一个Java 链式编程的例子,基本就是每次返回一个对象本身,这样就能够去调用对象的方法和属性. package com.sun; public class Demo05 { /** * @pa ...

  8. CA 配置网站映射

     

  9. 使用ASP.NET实现Windows Service定时执行任务

    转载http://blog.csdn.net/yanghua_kobe/article/details/6937816 我们怎样才能在服务器上使用asp.net定时执行任务而不需要安装windows ...

  10. iOS 多张图片保存到相册问题(add multiple images to photo album)

    不知道朋友们有木有做过多图保存到系统的相册这个需求,我在用`UIImageWriteToSavedPhotosAlbum`保存图片时候,在代理回调方`didFinishSavingWithError` ...