欢迎光临
我们一直在努力

ORACLE常用傻瓜問題1000問(之三)-数据库专栏,ORACLE

建站超值云服务器,限时71元/月

 
              oracle常用傻瓜問題1000問(之三)

 

作者:  ccbzzp

 

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

 

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

 

88. chr()的反函數是?

    ascii()

    select char(65) from dual; 

    select ascii(a) from dual;

 

89. 字符串的連接

    select concat(col1,col2) from table ;

    select col1||col2 from table ;

 

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

    sql>spool  c:\abcd.txt;

    sql>select *  from table;

    sql >spool off;

 

91. 怎样估算sql执行的i/o数 ?

    sql>set autotrace on ;

    sql>select * from table;

    or

    sql>select *  from  v$filestat ;

可以查看io数

 

92. 如何在sqlplus下改变字段大小?

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

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

93. 如何查询某天的数据?

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

 

94. 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);

 

95. 如果修改表名?

  alter table old_table_name rename to new_table_name;

 

96. 如何取得命令的返回状态值?

sqlcode=0

 

97. 如何知道用户拥有的权限?

    select * from dba_sys_privs ;

 

98. 从网上下载的oracle9i与市场上卖的标准版有什么区别?

          从功能上说没有区别,只不过oracle公司有明文规定;从网站上下载的oracle产品不得用于 商业用途,否则侵权。

 

99. 怎样判断数据库是运行在归档模式下还是运行在非归档模式下?

进入dbastudio,历程–〉数据库—〉归档查看。

 

100. sql>startup pfile和ifile,spfiled有什么区别?

pfile就是oracle传统的初始化参数文件,文本格式的。
ifile类似于c语言里的include,用于把另一个文件引入
spfile是9i里新增的并且是默认的参数文件,二进制格式
startup后应该只可接pfile

 

101. 如何搜索出前n条记录?

select * from employee where rownum < n
order by empno;

 

102. 如何知道机器上的oracle支持多少并发用户数?

        sql>conn internal  ;
sql>show parameter processes ;

 

103. db_block_size可以修改嗎?

     一般不可以﹐不建議這樣做的。

 

104. 如何统计两个表的记录总数?

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

 

105. 怎样用sql语句实现查找一列中第n大值?

   select * from
(select t.*,dense_rank() over (order by sal) rank from employee)
where rank = n;

 

106. 如何在给现有的日期加上2年?(

    select add_months(sysdate,24) from dual;

 

107. used_ublk为负值表示什么意思?

       it is “harmless”.

 

108. connect string是指什么?

       应该是tnsnames.ora中的服务名后面的内容

 

109. 怎样扩大redo log的大小?

        建立一个临时的redolog组,然后切换日志,删除以前的日志,建立新的日志。

 

110. tablespace 是否不能大于4g?

   没有限制.

 

111. 返回大于等于n的最小整數值?

    select ceil(n)  from dual;

 

112. 返回小于等于n的最小整數值?

    select floor(n)  from dual;

 

113. 返回當前月的最后一天?

     select last_day(sysdate)  from dual;

 

114. 如何不同用戶間數據導入?

  imp  system/manager  file=aa.dmp  fromuser=user_old   touser=user_new  rows=y  indexes=y ;

 

115. 如何找数据库表的主键字段的名称?

   sql>select * from user_constraints where constraint_type=p and   table_name=table_name;
 

116. 兩個結果集互加的函數?

   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;
 

117. 兩個結果集互減的函數?
 sql>select * from bsempms_old minus select * from bsempms_new;
 

118. 如何配置sequence?

    建sequence seq_custid
  create sequence seq_custid start 1 incrememt by 1;
  建表时:
  create table cust
  { cust_id smallint not null,
  …}
  insert 时:
  insert into table cust
  values( seq_cust.nextval, …)
 

日期的各部分的常用的的寫法

119>.取時間點的年份的寫法:
     select to_char(sysdate,yyyy) from dual;

 

120>.取時間點的月份的寫法:
     select to_char(sysdate,mm) from dual;

 

121>.取時間點的日的寫法:
     select to_char(sysdate,dd) from dual;

 

122>.取時間點的時的寫法:
     select to_char(sysdate,hh24) from dual;

 

123>.取時間點的分的寫法:
     select to_char(sysdate,mi) from dual;

 

124>.取時間點的秒的寫法:
     select to_char(sysdate,ss) from dual;

 

125>.取時間點的日期的寫法:
     select trunc(sysdate) from dual;

 

126>.取時間點的時間的寫法:
     select to_char(sysdate,hh24:mi:ss) from dual;

 

127>.日期,時間形態變為字符形態
     select to_char(sysdate) from dual;

 

128>.將字符串轉換成日期或時間形態:
     select to_date(2003/08/01) from dual;

 

129>.返回參數的星期几的寫法:
     select to_char(sysdate,d) from dual;

 

130>.返回參數一年中的第几天的寫法:
     select to_char(sysdate,ddd) from dual;

 

131>.返回午夜和參數中指定的時間值之間的秒數的寫法:
     select to_char(sysdate,sssss) from dual;

 

132>.返回參數中一年的第几周的寫法:
     select to_char(sysdate,ww) from dual;
  
  如有問題歡迎大家一起探討﹗

 

     待續……

 

 

赞(0)
版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com 特别注意:本站所有转载文章言论不代表本站观点! 本站所提供的图片等素材,版权归原作者所有,如需使用,请与原作者联系。未经允许不得转载:IDC资讯中心 » ORACLE常用傻瓜問題1000問(之三)-数据库专栏,ORACLE
分享到: 更多 (0)

相关推荐

  • 暂无文章