当前位置:首页>>开发编程>>数据库>>新闻内容
ORACLE常用傻瓜問題1000問(之二)
作者:CCBZZP 发布时间:2003-10-16 22:31:29 文章来源:CSDN

        大家在應用ORACLE的時候可能會遇到很多看起來不難的問題, 特別對新手來說, 今天我簡單把它總結一下, 發布給大家, 希望對大家有幫助! 和大家一起探討, 共同進步!

 

        對ORACLE高手來說是不用看的.

 

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. 如何改变WINSQL*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 aaa
add constraint aaa_key primary key(a1,b1) ;

 

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

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

 

61. 怎样查看ORACLE中有哪些程序在运行之中?

   查看v$sessions

 

62. 怎么可以看到数据库有多少个tablespace?

select  *   from dba_tablespaces;

 

63. 如何修改oracle数据库的用户连接数?

修改initSID.ora,将process加大,重启数据库.

 

64. 如何查出一条记录的最后更新时间?

  可以用logminer 察看

 

65. 如何在PL/SQL中读写文件?

UTL_FILE包允许用户通过PL/SQL读写操作系统文件。

 

66. 怎樣把“&”放入一條記錄中?

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

 

67. EXP 如何加QUERY参数?

EXP USER/PASS FILE=A.DMP TABLES(BSEMPMS)
QUERY='"WHERE EMP_NO=\'S09394\'\"

 

68. 关于oracle8i支持简体和繁体的字符集问题?

   ZHS16GBK可以支

 

69. Data Guard是什么软件?

就是Standby的换代产品

 

70. 如何創建SPFILE?

SQL> connect / as sysdba
 SQL> select * from v$version;
 SQL> create pfile from spfile;
SQL> CREATE
SPFILE FROM PFILE='E:\ora9i\admin\eygle\pfile\init.ora';

文件已创建。
SQL> CREATE SPFILE='E:\ora9i\database\SPFILEEYGLE.ORA' FROM PFILE='E:\ora9i\admin\eygle\pfile\init.ora';
文件已创建。

71. 內核參數的應用?

shmmax
  含义:这个设置并不决定究竟Oracle数据库或者操作系统使用多少物理内存,只决定了最多可以使用的内存数目。这个设置也不影响操作系统的内核资源。
  设置方法:0.5*物理内存
  例子:Set shmsys:shminfo_shmmax=10485760
  shmmin
  含义:共享内存的最小大小。
  设置方法:一般都设置成为1
  例子:Set shmsys:shminfo_shmmin=1
  shmmni
  含义:系统中共享内存段的最大个数。
  例子:Set shmsys:shminfo_shmmni=100
  shmseg
  含义:每个用户进程可以使用的最多的共享内存段的数目。
  例子:Set shmsys:shminfo_shmseg=20
  semmni
  含义:系统中semaphore identifierer的最大个数。
  设置方法:把这个变量的值设置为这个系统上的所有Oracle的实例的init.ora中的最大的那个processes的那个值加10
  例子:Set semsys:seminfo_semmni=100
  semmns
  含义:系统中emaphores的最大个数。
  设置方法:这个值可以通过以下方式计算得到:各个Oracle实例的initSID.ora里边的processes的值的总和(除去最大的Processes参数)+最大的那个Processes×210×Oracle实例的个数。
  例子:Set semsys:seminfo_semmns=200
  semmsl:
  含义:一个setsemaphore的最大个数。
  设置方法:设置成为10+所有Oracle实例的InitSID.ora中最大的Processes的值。
  例子:Set semsys:seminfo_semmsl=-200

72. 怎样查看哪些用户拥有SYSDBASYSOPER权限?

SQL>conn sys/change_on_install
SQL>select * from V_$PWFILE_USERS;

73. 如何单独备份一个或多个表?

   exp 用户/密码 tables=(表1,,表2)

 

74. 如何单独备份一个或多个用户?

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

 

75. 如何对CLOB字段进行全文检索?

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

 

76. 如何显示当前连接用户?

   SHOW  USER

 

77. 如何查看数据文件放置的路径 ?

col file_name format a50
SQL> select tablespace_name,file_id,bytes/1024/1024,file_name from dba_data_files order by file_id;

 

78. 如何查看现有回滚段及其状态 ?

SQL> col segment format a30
SQL> SELECT SEGMENT_NAME,OWNER,TABLESPACE_NAME,SEGMENT_ID,FILE_ID,STATUS FROM DBA_ROLLBACK_SEGS

 

79. 如何改变一个字段初始定义的Check范围?

SQL> alter table xxx drop constraint constraint_name;
之后再创建新约束:
SQL> alter table xxx add constraint constraint_name check();

 

80. Oracle常用系统文件有哪些?

通过以下视图显示这些文件信息:v$database,v$datafile,v$logfile v$controlfile v$parameter;

 

81. 內連接INNER JOIN?

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

 

82. 如何外連接?

  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;

 

83. 如何執行腳本SQL文件?

  SQL>@$PATH/filename.sql;

 

84. 如何快速清空一個大表?

SQL>truncate table table_name;

 

85. 如何查有多少個數据庫實例?

  SQL>SELECT * FROM V$INSTANCE;

 

86. 如何查詢數据庫有多少表?

SQL>select * from all_tables;

 

87. 如何測試SQL語句執行所用的時間?

SQL>set timing on ;

SQL>select * from tablename;


最新更新
·SQL Server 2005删除用户失败
·SQL Server中删除重复数据的
·经典SQL语句大全
·SQL Server 2005与ASP.NET/A
·三种查看MySQL数据库版本的方
·SQL Server 2005 Express 远
·启用SQL Server 2005 Expres
·Windows下如何安装或卸载MyS
·解决MySQL5数据库连接超时问
·清除SQL Server日志的两种方
相关信息
·2008主流数据库产品回顾与展望
·安装Oracle后配置和启动企业管理器的方法
·简单介绍Oracle 9i的16种数据类型
·如何在Oracle中导入dmp数据库文件
·把Oracle查询转换为SQL Server
·轻松修改Oracle数据库表的大小
·实例讲解Oracle里抽取随机数的多种方法
·Oracle在Linux操作系统下的安装小结
·用Oracle8i修复数据库坏块的三种方法
·在Oracle中导出、导入dmp数据库文件
画心
愚爱
偏爱
火苗
白狐
画沙
犯错
歌曲
传奇
稻香
小酒窝
狮子座
小情歌
全是爱
棉花糖
海豚音
我相信
甩葱歌
这叫爱
shero
走天涯
琉璃月
Nobody
我爱他
套马杆
爱是你我
最后一次
少女时代
灰色头像
断桥残雪
美了美了
狼的诱惑
我很快乐
星月神话
心痛2009
爱丫爱丫
半城烟沙
旗开得胜
郎的诱惑
爱情买卖
2010等你来
我叫小沈阳
i miss you
姑娘我爱你
我们都一样
其实很寂寞
我爱雨夜花
变心的玫瑰
犀利哥之歌
你是我的眼
你是我的OK绷
贝多芬的悲伤
哥只是个传说
丢了幸福的猪
找个人来爱我
要嫁就嫁灰太狼
如果这就是爱情
我们没有在一起
寂寞在唱什么歌
斯琴高丽的伤心
别在我离开之前离开
不是因为寂寞才想你
爱上你等于爱上了错
在心里从此永远有个你
一个人的寂寞两个人的错