Oracle常见问题与解答(二)

2014-11-24 15:03:36 · 作者: · 浏览: 1
S/Row-X (SSX)', 6, 'Exclusive', TO_CHAR(LMODE)) MODE_HELD, DECODE(REQUEST, 0, 'None', 1, 'Null', 2, 'Row-S (SS)', 3, 'Row-X (SX)', 4, 'Share', 5, 'S/Row-X (SSX)', 6, 'Exclusive', TO_CHAR(REQUEST)) MODE_REQUESTED, O.OWNER||'.'||O.OBJECT_NAME||' ('||O.OBJECT_TYPE||')', S.TYPE LOCK_TYPE, L.ID1 LOCK_ID1, L.ID2 LOCK_ID2 FROM V$LOCK L, SYS.DBA_OBJECTS O, V$SESSION S WHERE L.SID = S.SID AND L.ID1 = O.OBJECT_ID ;
30. 如何解锁
  ALTER SYSTEM KILL SESSION ‘SID,SERIR#’;
31. SQLPLUS下如何修改编辑器
DEFINE _EDITOR="<编辑器的完整路经>" -- 必须加上双引号
来定义新的编辑器,也可以把这个写在$ORACLE_HOME/sqlplus/admin/glogin.sql里面使它永久有效。
32. ORACLE产生随机函数是
  DBMS_RANDOM.RANDOM
33. LINUX下查询磁盘竞争状况命令
  Sar -d
33. LINUX下查询CPU竞争状况命令
  sar -r
34. 查询当前用户对象
  SELECT * FROM USER_OBJECTS;
  SELECT * FROM DBA_SEGMENTS;
35. 如何获取错误信息
 SELECT * FROM USER_ERRORS;
36. 如何获取链接状况
 SELECT * FROM DBA_DB_LINKS;
37. 查看数据库字符状况
  SELECT * FROM NLS_DATABASE_PARAMETERS;
  SELECT * FROM V$NLS_PARAMETERS;
38. 查询表空间信息
SELECT * FROM DBA_DATA_FILES;
39. ORACLE的INTERAL用户要口令
  修改SQLNET.ORA
 SQLNET.AUTHENTICATION_SERVICES=(NTS)
40. 出现JAVA.EXE的解决办法
  一般是将ORACLEORAHOMEXIHTTPSERVER改成手工激活可以的
 X是8或9
41. 如何给表、列加注释?
SQL>comment on table 表is '表注释';
注释已创建。
SQL>comment on column 表.列is '列注释';
注释已创建。
SQL> select * from user_tab_comments where comments is not null;
42. 如何查看各个表空间占用磁盘情况?
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
43. 如把ORACLE设置为MTS或专用模式?
#dispatchers="(PROTOCOL=TCP) (SERVICE=SIDXDB)"
加上就是MTS,注释就是专用模式,SID是指你的实例名。
44. 如何才能得知系统当前的SCN号
select max(ktuxescnw * power(2, 32) + ktuxescnb) from x$ktuxe;
45. 请问如何在ORACLE中取毫秒
9i之前不支持,9i开始有timestamp.
9i可以用select systimestamp from dual;
46. 如何在字符串里加回车?
  select 'Welcome to visit'||chr(10)||'www.CSDN.NET' from dual ;
47. 中文是如何排序的?
  Oracle9i之前,中文是按照二进制编码进行排序的。
  在oracle9i中新增了按照拼音、部首、笔画排序功能。设置NLS_SORT值
  SCHINESE_RADICAL_M 按照部首(第一顺序)、笔划(第二顺序)排序
  SCHINESE_STROKE_M 按照笔划(第一顺序)、部首(第二顺序)排序
  SCHINESE_PINYIN_M 按照拼音排序
48. Oracle8i中对象名可以用中文吗?
  可以
49. 如何改变WIN中SQL*Plus启动选项?
SQL*PLUS自身的选项设置我们可以在$ORACLE_HOME/sqlplus/admin/glogin.sql中设置。
50. 怎样修改oracel数据库的默认日期
  alter session set nls_date_format='yyyymmddhh24miss';
 OR
  可以在init.ora中加上一行
nls_date_format='yyyymmddhh24miss'
51. 如何将小表放入keep池中
 alter table xxx storage(buffer_pool keep);
52. 如何检查是否安装了某个patch
  check that oraInventory
53. 如何使select语句使查询结果自动生成序号
select rownum,COL from table;
54. 如何知道数据裤中某个表所在的tablespace
select tablespace_name from user_tables where table_name='TEST';
select * from user_tables中有个字段TABLESPACE_NAME,(oracle);
select * from dba_segments where …;
55. 怎么可以快速做一个和原表一样的备份表
  create table new_table as (select * from old_table);
55. 怎么在sqlplus下修改procedure
 select line,trim(text) t from user_source where name =’A’order by line;
56. 怎样解除PROCEDURE被意外锁定
 alter system kill session ,把那个session给杀掉,不过你要先查出她的session id
or
  把该过程重新改个名字就可以了。
57. SQL Reference是个什幺东西?
  是一本sql的使用手册,包括语法、函数等等,oracle官方网站的文档中心有 下载.
58. 如何查看数据库的状态
 unix下
ps -ef | grep ora
windows下
看服务是否起来
是否可以连上数据库
59. 请问如何修改一张表的主键
alter table aaa
drop constraint aaa_key ;
alter table a