oracle刚開始学习的人经常使用操作100问

1. Oracle安装完毕后的初始口令?

   internal/oracle

  sys/change_on_install

  system/manager

  scott/tiger

  sysman/oem_temp

2. oracle中的裸设备指的是什么?

裸设备就是绕过文件系统直接訪问的储存空间。

3. 请问怎样分辨某个用户是从哪台机器登陆ORACLE的?

SELECT machine , terminal FROM V$SESSION;

4. 用什么语句查询字段呢?

desc table_name 能够查询表的结构

select field_name,... from ... 能够查询字段的值

select * from all_tables where table_name like '%'

select * from all_tab_columns where table_name='??'

5. 如何得到触发器、过程、函数的创建脚本?

desc user_source

user_triggers

6. 如何计算一个表占用的空间的大小?

select owner,table_name,

NUM_ROWS,

BLOCKS*AAA/1024/1024 "Size M",

EMPTY_BLOCKS,

LAST_ANALYZED

from dba_tables

where table_name='XXX';

Here: AAA is the value of db_block_size ;

XXX is the table name you want to check

7. 怎样查看最大会话数?

SELECT * FROM V$PARAMETER WHERE NAME LIKE 'proc%';

SQL>

SQL> show parameter processes

NAME TYPE VALUE

------------------------------------ ------- ------------------------------

aq_tm_processes integer 1

db_writer_processes integer 1

job_queue_processes integer 4

log_archive_max_processes integer 1

processes integer 200

这里为200个用户。

select * from v$license;

当中sessions_highwater纪录以前到达的最大会话数。

8. 怎样查看系统被锁的事务时间?

select * from v$locked_object ;

9. 怎样以archivelog的方式执行oracle?

init.ora

log_archive_start = true

RESTART DATABASE

10. 怎么获取有哪些用户在使用数据库?

select username from v$session;

11. 数据表中的字段最大数是多少?

表或视图中的最大列数为 1000。

12. 如何查得数据库的SID ?

select name from v$database;

也能够直接查看 init.ora文件。

13. 怎样在Oracleserver上通过SQLPLUS查看本机IP地址 ?

select sys_context('userenv','ip_address') from dual;

假设是登陆本机数据库,仅仅能返回127.0.0.1。

14. 在ORACLE TABLE中怎样抓取MEMO类型栏位为空的资料记录?

select remark from oms_flowrec where trim(' ' from remark) is not null ;

15. 怎样用BBB表的资料去更新AAA表的资料(有关联的字段)?

UPDATE AAA SET BNS_SNM=(SELECT BNS_SNM FROM BBB

WHERE AAA.DPT_NO=BBB.DPT_NO) W

HERE BBB.DPT_NO IS NOT NULL;

16. 何查询每一个用户的权限?

SELECT * FROM DBA_SYS_PRIVS;

17. 怎样将表移动表空间?

ALTER TABLE TABLE_NAME MOVE TABLESPACE_NAME;

18. 怎样将索引移动表空间?

ALTER INDEX INDEX_NAME REBUILD TABLESPACE TABLESPACE_NAME;

19. 查询锁的状况的对象有?

V$LOCK, V$LOCKED_OBJECT, V$SESSION, V$SQLARE

A, V$PROCESS ;

20. 怎样解锁?

ALTER SYSTEM KILL SESSION ‘SID,SERIR#’;

21. SQLPLUS下怎样改动编辑器?

DEFINE _EDITOR="<编辑器的完整路经>" -- 必须加上双引號

来定义新的编辑器,也能够把这个写在$ORACLE_HOME/sqlplus/admin/glogin.sql里面使它永久有效。

22. ORACLE产生随机函数是?

DBMS_RANDOM.RANDOM

23. 查询当前用户对像?

SELECT * FROM USER_OBJECTS;

SELECT * FROM DBA_SEGMENTS;

24. 怎样获取错误信息?

SELECT * FROM USER_ERRORS;

25. 怎样获取链接状况?

SELECT * FROM DBA_DB_LINKS;

26. 查看数据库字符状况?

SELECT * FROM NLS_DATABASE_PARAMETERS;

SELECT * FROM V$NLS_PARAMETERS;

27.. 怎样给表、列加凝视?

SQL>comment on table 表 is '表凝视';

凝视已创建。

SQL>comment on column 表.列 is '列凝视';

凝视已创建。

SQL> select * from user_tab_comments where comments is not null;

28. 怎样查看各个表空间占用磁盘情况?

SQL> col tablespace format a20

SQL> select

b.file_id 文件ID号,

b.tablespace_name 表空间名,

b.bytes 字节数,

(b.bytes-sum(nvl(a.bytes,0))) 已使用,

sum(nvl(a.bytes,0)) 剩余空间,

sum(nvl(a.bytes,0))/(b.bytes)*100 剩余百分比

from dba_free_space a,dba_data_files b

where a.file_id=b.file_id

group by b.tablespace_name,b.file_id,b.bytes

order by b.file_id

29. 怎样才干得知系统当前的SCN号 ?

select max(ktuxescnw * power(2, 32) + ktuxescnb) from x$ktuxe;

30. 怎样在字符串里加回车?

select 'Welcome to visit'||chr(10)||'www.CSDN.NET' from dual ;

31. 怎样改变WIN中SQL*Plus启动选项?

SQL*PLUS自身的选项设置,能够在$ORACLE_HOME/sqlplus/admin/glogin.sql中设置。

32. 如何改动oracel数据库的默认日期?

alter session set nls_date_format='yyyymmddhh24miss';

OR

能够在init.ora中加上一行

nls_date_format='yyyymmddhh24miss'

33. 怎样使select语句使查询结果自己主动生成序号?

select rownum,COL from table;

34. 怎样知道数据裤中某个表所在的tablespace?

select tablespace_name from user_tables where table_name='TEST';

select * from user_tables中有个字段TABLESPACE_NAME,(oracle);

select * from dba_segments where …;

35. 怎么在sqlplus下改动procedure?

select line,trim(text) t from user_source where name =’A’ order by line;

36.. 请问怎样改动一张表的主键?

alter table aaa

drop constraint aaa_key ;

alter table aaa

add constraint aaa_key primary key(a1,b1) ;

37. 改变数据文件的大小?

用 ALTER DATABASE .... DATAFILE .... ;

手工改变数据文件的大小,对于原来的 数据文件有没有损害。

[NextPage]

38. 怎么能够看到数据库有多少个tablespace?

select * from dba_tablespaces;

39. 怎样改动oracle数据库的用户连接数?

改动initSID.ora,将process加大,重新启动数据库。

40. 如何把“&”放入一条记录中?

insert into a values (translate ('at{&}t','at{}','at'));

41. 如何查看哪些用户拥有SYSDBA、SYSOPER权限?

SQL>conn sys/change_on_install

SQL>select * from V_$PWFILE_USERS;

42. 怎样单独备份一个或多个表?

exp 用户/password tables=(表1,…,表2)

43. 怎样单独备份一个或多个用户?

exp system/manager owner=(用户1,用户2,…,用户n) file=导出文件

44. 怎样对CLOB字段进行全文检索?

SELECT * FROM A WHERE dbms_lob.instr(a.a,'K',1,1)>0;

45. 怎样显示当前连接用户?

SHOW USER

46. 怎样查看数据文件放置的路径 ?

col file_name format a50

SQL> select tablespace_name,file_id,bytes/1024/1024,file_name from dba_data_fi

les order by file_id;

47. 怎样查看现有回滚段及其状态 ?

SQL> col segment format a30

SQL> SELECT SEGMENT_NAME,OWNER,TABLESPACE_NAME,SEGMENT_ID,FILE_ID,STATUS FROM

DBA_ROLLBACK_SEGS

48. 怎样改变一个字段初始定义的Check范围?

SQL> alter table xxx drop constraint constraint_name;

之后再创建新约束:

SQL> alter table xxx add constraint constraint_name check();

49. Oracle经常使用系统文件有哪些?

通过下面视图显示这些文件信息:

v$database,v$datafile,v$logfile v$controlfile v$ parameter;

50. 什么是内连接INNER JOIN?

Select a.* from bsempms a,bsdptms b where a.dpt_no=b.dpt_no;

51. 怎样外连接?

Select a.* from bsempms a,bsdptms b where a.dpt_no=b.dpt_no(+);

Select a.* from bsempms a,bsdptms b wherea.dpt_no(+)=b.dpt_no;

52. 怎样运行脚本SQL文件?

SQL>@$PATH/filename.sql;

53. 怎样高速清空一个大表?

SQL>truncate table table_name;

54. 怎样查有多少个数据库实例?

SQL>SELECT * FROM V$INSTANCE;

55. 怎样查询数据库有多少表?

SQL>select * from all_tables;

56. 怎样測试SQL语句运行所用的时间?

SQL>set timing on ;

SQL>select * from tablename;

57. CHR()的反函数是?

ASCII()

SELECT CHAR(65) FROM DUAL;

SELECT ASCII('A') FROM DUAL;

58. 怎样实现字符串的连接

SELECT CONCAT(COL1,COL2) FROM TABLE ;

SELECT COL1||COL2 FROM TABLE ;

59. 怎么把select出来的结果导到一个文本文件里?

SQL>SPOOL C:\ABCD.TXT;

SQL>select * from table;

SQL >spool off;

60. 如何估算SQL运行的I/O数?

SQL>SET AUTOTRACE ON ;

SQL>SELECT * FROM TABLE;

OR

SQL>SELECT * FROM v$filestat ;

能够查看IO数。

61. 怎样在sqlplus下改变字段大小?

alter table table_name modify (field_name varchar2(100));

改大行,改小不行(除非都是空的)。

62. 怎样查询某天的数据?

select * from table_name where trunc(日期字段)=to_date('2003-05-02','yyyy-mm-

dd');

63. sql 语句怎样插入全年日期?

create table BSYEAR (d date);

insert into BSYEAR

select to_date('20030101','yyyymmdd')+rownum-1

from all_objects

where rownum <= to_char(to_date('20031231','yyyymmdd'),'ddd');

65. 假设改动表名?

alter table old_table_name rename to new_table_name;

66. 怎样取得命令的返回状态值?

sqlcode=0

67. 怎样知道用户拥有的权限?

SELECT * FROM dba_sys_privs ;

68. 怎样搜索出前N条记录?

Select * FROM empLOYEE Where ROWNUM < n

orDER BY empno;

69. 怎样知道机器上的Oracle支持多少并发用户数?

SQL>conn internal ;

SQL>show parameter processes ;

70. 怎样统计两个表的记录总数?

select (select count(id) from aa)+(select count(id) from bb) 总数 from dual。

71. 如何用Sql语句实现查找一列中第N大值?

select * from

(select t.*,dense_rank() over (order by sal) rank from employee)

where rank = N。

71. 怎样在给现有的日期加上2年?(

select add_months(sysdate,24) from dual;

72. 如何扩大REDO LOG的大小?

建立一个暂时的redolog组。然后切换日志,删除曾经的日志,建立新的日志。

73. 怎样不同用户间数据导入?

IMP SYSTEM/MANAGER FILE=AA.DMP

FROMUSER=USER_OLD TOUSER=USER_NEW ROWS=Y INDEXES=Y 。

74. 怎样找数据库表的主键字段的名称?

SQL>Select * FROM user_constraints

Where CONSTRAINT_TYPE='P' and table_name='TABLE_NAME';

75. 两个结果集互加的函数?

SQL>Select * FROM BSEMPMS_OLD INTERSECT Select * FROM BSEMPMS_NEW。

SQL>Select * FROM BSEMPMS_OLD UNION Select * FROM BSEMPMS_NEW

SQL>Select * FROM BSEMPMS_OLD UNION ALL Select * FROM BSEMPMS_NEW;

76. 两个结果集互减的函数?

SQL>Select * FROM BSEMPMS_OLD MINUS Select * FROM BSEMPMS_NEW。

77.  将N秒转换为时分秒格式?

set serverout on

declare

N number := 1000000;

ret varchar2(100)。

begin

ret := trunc(n/3600) || '小时' || to_char(to_date(mod(n,3600),'sssss'),'fmmi"分 "ss"秒"') ;

dbms_output.put_line(ret)。

end。

78 怎样查询做比較大的排序的进程?

Select b.tablespace, b.segfile#, b.segblk#, b.blocks, a.sid, a.serial#, a.username, a.osuser,

a.status

FROM v$session a,v$sort_usage b

Where a.saddr = b.session_addr

orDER BY b.tablespace, b.segfile#, b.segblk#, b.blocks 。

79. 怎样查询做比較大的排序的进程的SQL语句?

select /*+ orDERED */ sql_text from v$sqltext a

where a.hash_value = (

select sql_hash_value from v$session b

where b.sid = &sid and b.serial# = &serial)

order by piece asc ;

80. 怎样查找反复记录?

Select * FROM TABLE_NAME

Where ROWID!=(Select MAX(ROWID) FROM TABLE_NAME D

Where TABLE_NAME.COL1=D.COL1 AND TABLE_NAME.COL2=D.COL2);

81. 怎样删除反复记录?

Delete FROM TABLE_NAME

Where ROWID!=(Select MAX(ROWID) FROM TABLE_NAME D

Where TABLE_NAME.COL1=D.COL1 AND TABLE_NAME.COL2=D.COL2);

82. 怎样高速编译全部视图?

SQL >SPOOL VIEW1.SQL

SQL >Select ‘Alter VIEW ‘||TNAME||’

COMPILE;’ FROM TAB;

SQL >SPOOL OFF

然后运行VIEW1.SQL就可以。

SQL >@VIEW1.SQL;

83. 怎样加密ORACLE的存储过程?

下列存储过程内容放在AA.SQL文件里

create or replace procedure testCCB(i in number) as

begin

dbms_output.put_line('输入參数是'||to_char(i))。

end;

SQL>wrap iname=a.sql。

PL/SQL Wrapper: Release 8.1.7.0.0 - Production on Tue Nov 27 22:26:48 2001

Copyright (c) oracle Corporation 1993, 2000. All Rights Reserved。

Processing AA.sql to AA.plb

执行AA.plb

SQL> @AA.plb ;

84. 怎样监控事例的等待?

select event,sum(decode(wait_Time,0,0,1)) "Prev",

sum(decode(wait_Time,0,1,0)) "Curr",count(*) "Tot"

from v$session_Wait

group by event order by 4;

85. 怎样回滚段的争用情况?

select name, waits, gets, waits/gets "Ratio"

from v$rollstat C, v$rollname D

where C.usn = D.usn。

86. 怎样监控表空间的 I/O 比例?

select B.tablespace_name name, B.file_name "file", A.phyrds pyr,

A.phyblkrd pbr, A.phywrts pyw, A.phyblkwrt pbw

from v$filestat A, dba_data_files B

where A.file# = B.file_id

order by B.tablespace_name;

87. 怎样监控文件系统的 I/O 比例?

select substr(C.file#,1,2) "#", substr(C.name,1,30) "Name", C.status, C.bytes, D.phyrds,

D.phywrts

from v$datafile C, v$filestat D

where C.file# = D.file#。

88. 怎样在某个用户下找全部的索引?

select user_indexes.table_name, user_indexes.index_name,uniqueness, column_name

from user_ind_columns, user_indexes

where user_ind_columns.index_name = user_indexes.index_name

and user_ind_columns.table_name = user_indexes.table_name

order by user_indexes.table_type, user_indexes.table_name,

user_indexes.index_name, column_position;

89. 怎样监控 SGA 的命中率?

select a.value + b.value "logical_reads", c.value "phys_reads",

round(100 * ((a.value+b.value)-c.value) / (a.value+b.value)) "BUFFER HIT RATIO"

from v$sysstat a, v$sysstat b, v$sysstat c

where a.statistic# = 38 and b.statistic# = 39

and c.statistic# = 40;

90. 怎样监控 SGA 中字典缓冲区的命中率?

select parameter, gets,Getmisses , getmisses/(gets+getmisses)*100 "miss ratio",

(1-(sum(getmisses)/ (sum(gets)+sum(getmisses))))*100 "Hit ratio"

from v$rowcache

where gets+getmisses <>0

group by parameter, gets, getmisses;

91. 怎样监控 SGA 中共享缓存区的命中率,应该小于1% ?

select sum(pins) "Total Pins", sum(reloads) "Total Reloads",

sum(reloads)/sum(pins) *100 libcache

from v$librarycache;

select sum(pinhits-reloads)/sum(pins) "hit radio",sum(reloads)/sum(pins) "reload percent"

from v$librarycache;

92. 怎样显示全部数据库对象的类别和大小?

select count(name) num_instances ,type ,sum(source_size) source_size ,

sum(parsed_size) parsed_size ,sum(code_size) code_size ,sum(error_size) error_size,

sum(source_size) +sum(parsed_size) +sum(code_size) +sum(error_size) size_required

from dba_object_size

group by type order by 2。

93. 监控 SGA 中重做日志缓存区的命中率,应该小于1%

Select name, gets, misses, immediate_gets, immediate_misses,

Decode(gets,0,0,misses/gets*100) ratio1,

Decode(immediate_gets+immediate_misses,0,0,

immediate_misses/(immediate_gets+immediate_misses)*100) ratio2

FROM v$latch Where name IN ('redo allocation', 'redo copy');

94. 监控内存和硬盘的排序比率。最好使它小于 .10。添加 sort_area_size

Select name, value FROM v$sysstat Where name IN ('sorts (memory)', 'sorts(disk)');

156. 怎样监控当前数据库谁在执行什么SQL语句?

Select osuser, username, sql_text from v$session a, v$sqltext b

where a.sql_address =b.address order by address, piece;

95. 怎样监控字典缓冲区?

Select (SUM(PINS - RELOADS)) / SUM(PINS) "LIB CACHE" FROM V$LIBRARYCACHE;

Select (SUM(GETS - GETMISSES - USAGE - FIXED)) / SUM(GETS) "ROW CACHE" FROM V$ROWCACHE;

Select SUM(PINS) "EXECUTIONS", SUM(RELOADS) "CACHE MISSES WHILE EXECUTING" FROM V$LIBRARYCACHE;

后者除曾经者,此比率小于1%,接近0%为好。

Select SUM(GETS) "DICTIONARY GETS",SUM(GETMISSES) "DICTIONARY CACHE GET MISSES"

FROM V$ROWCACHE

96. 怎样知道当前用户的ID号?

SQL>SHOW USER;

或 SQL>select user from dual;

97. 怎样查看碎片程度高的表?

Select segment_name table_name , COUNT(*) extents

FROM dba_segments Where owner NOT IN ('SYS', 'SYSTEM') GROUP BY segment_name

HAVING COUNT(*) = (Select MAX( COUNT(*) ) FROM dba_segments GROUP BY segment_name);

98. 怎样知道表在表空间中的存储情况?

select segment_name,sum(bytes),count(*) ext_quan from dba_extents where

tablespace_name='&tablespace_name' and segment_type='TABLE' group by tablespace_name,segment_name ;

99. 怎样知道索引在表空间中的存储情况?

select segment_name,count(*) from dba_extents

where segment_type='INDEX' and owner='&owner'

group by segment_name;

100. 怎样获取时间点的秒的写法?

Select TO_CHAR(SYSDATE,'SS') FROM DUAL;

oracle刚開始学习的人经常使用操作100问的更多相关文章

  1. wxWidgets刚開始学习的人导引(4)——wxWidgets学习资料及利用方法指导

    wxWidgets刚開始学习的人导引全文件夹   PDF版及附件下载 1 前言2 下载.安装wxWidgets3 wxWidgets应用程序初体验4 wxWidgets学习资料及利用方法指导5 用wx ...

  2. wxWidgets刚開始学习的人导引(3)——wxWidgets应用程序初体验

    wxWidgets刚開始学习的人导引全文件夹   PDF版及附件下载 1 前言2 下载.安装wxWidgets3 wxWidgets应用程序初体验4 wxWidgets学习资料及利用方法指导5 用wx ...

  3. wxWidgets刚開始学习的人导引(2)——下载、安装wxWidgets

    wxWidgets刚開始学习的人导引全目录   PDF版及附件下载 1 前言2 下载.安装wxWidgets3 wxWidgets应用程序初体验4 wxWidgets学习资料及利用方法指导5 用wxS ...

  4. 刚開始学习的人制作VMOS场效应管小功放

    VMOS场效应管既有电子管的长处又有晶体管的长处,用它制作的功率放大器声音醇厚.甜美,动态范围大.频率响应好.因此近年来在音响设备中得到了广泛应用. 大功率的场效应管功率放大器.电.路比較复杂.制作和 ...

  5. wxWidgets刚開始学习的人导引(1)——前言

    wxWidgets刚開始学习的人导引全文件夹   PDF版及附件下载 1 前言2 下载.安装wxWidgets3 wxWidgets应用程序初体验4 wxWidgets学习资料及利用方法指导5 用wx ...

  6. 对于刚開始学习的人Xcode最经常使用的快捷键

    对于刚開始学习的人而言,好多人都是直接使用鼠标进行操作.差点儿非常少使用快捷键,从而再练习编程时比别人慢那么一点,今天就把刚開始学习的人最经常使用的几个快捷键给大家总结下,当然欢迎大家补充. (1)c ...

  7. 【React Native开发】React Native配置执行官方样例-刚開始学习的人的福音(8)

    ),React Native技术交流4群(458982758),请不要反复加群! 欢迎各位大牛,React Native技术爱好者加入交流!同一时候博客左側欢迎微信扫描关注订阅号,移动技术干货,精彩文 ...

  8. wxWidgets刚開始学习的人导引(6)——wxWidgets学习材料清单

    wxWidgets刚開始学习的人导引全文件夹   PDF版及附件下载 1 前言2 下载.安装wxWidgets3 wxWidgets应用程序初体验4 wxWidgets学习资料及利用方法指导5 用wx ...

  9. JavaScript 刚開始学习的人应知的 24 条最佳实践

    原文:24 JavaScript Best Practices for Beginners (注:阅读原文的时候没有注意公布日期,认为不错就翻译了,翻译到 JSON.parse 那一节认为有点不正确路 ...

随机推荐

  1. 本地自旋锁与信号量/多服务台自旋队列-spin wait风格的信号量

    周日傍晚,我去家附近的超市(...)买苏打水,准备自制青柠苏打.我感觉我做的比买的那个巴黎水要更爽口.由于天气太热,非常多人都去超市避暑去了,超市也不撵人,这仿佛是他们的策略.人过来避暑了,走的时候难 ...

  2. 深刻理解Java中的String、StringBuffer和StringBuilder的差别

    声明:本博客为原创博客,未经同意.不得转载!小伙伴们假设是在别的地方看到的话,建议还是来csdn上看吧(链接为http://blog.csdn.net/bettarwang/article/detai ...

  3. When Cyber Security Meets Machine Learning 机器学习 安全分析 对于安全领域的总结很有用 看未来演进方向

    链接:http://ucys.ugr.es/jnic2016/docs/MachineLearning_LiorRokachJNIC2016.pdf https://people.eecs.berke ...

  4. python fuzzy c-means demo

    摘自:http://pythonhosted.org/scikit-fuzzy/auto_examples/plot_cmeans.html#example-plot-cmeans-py,加入了自己的 ...

  5. weblogic管理脚本

    start.sh Java代码  #!/usr/bin/bash # # start.sh # @auth: zhoulin@lianchuang.com # SERVER_STATUS () { s ...

  6. 16. 3Sum Closest[M]最接近的三数之和

    题目 Given an array nums of n integers and an integer target, find three integers in nums such that th ...

  7. MarkDown 语法备份

    标题 标题1 标题2 标题3 标题4 标题5 无序列表 飞雪连天射白鹿 书神侠倚碧鸳 有序列表 飞雪连天射白鹿 笑书神侠倚碧鸳 超链接 百度 图片 粗体和斜体 粗体 斜体 表格 左对齐标题 右对齐标题 ...

  8. Java io 操作

    package tlistpackage; import java.io.File; import java.io.FileInputStream; import java.io.FileNotFou ...

  9. redis模拟消息订阅

    使用办法: 订阅端: Subscribe 频道名称 发布端: publish 频道名称 发布内容 客户端例子: redis 127.0.0.1:6379> subscribe news Read ...

  10. JavaScript系列--浅析原型链与继承

    一.前言 继承是面向对象(OOP)语言中的一个最为人津津乐道的概念.许多面对对象(OOP)语言都支持两种继承方式::接口继承 和 实现继承 . 接口继承只继承方法签名,而实现继承则继承实际的方法.由于 ...