當(dāng)前位置:首頁>>開發(fā)編程>>數(shù)據(jù)庫>>新聞內(nèi)容
ORACLE常用傻瓜問題1000問(之三)
作者:CCBZZP 發(fā)布時(shí)間:2003-10-16 22:32:12 文章來源:CSDN

        大家在應(yīng)用ORACLE的時(shí)候可能會(huì)遇到很多看起來不難的問題, 特別對(duì)新手來說, 今天我簡(jiǎn)單把它總結(jié)一下, 發(fā)布給大家, 希望對(duì)大家有幫助! 和大家一起探討, 共同進(jìn)步!

 

        對(duì)ORACLE高手來說是不用看的.

 

88. CHR()的反函數(shù)是?

    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出來的結(jié)果導(dǎo)到一個(gè)文本文件中?

    SQL>SPOOL  C:\ABCD.TXT;

    SQL>select *  from table;

    SQL >spool off;

 

91. 怎樣估算SQL執(zhí)行的I/O數(shù) ?

    SQL>SET AUTOTRACE ON ;

    SQL>SELECT * FROM TABLE;

    OR

    SQL>SELECT *  FROM  v$filestat ;

可以查看IO數(shù)

 

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

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

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

93. 如何查詢某天的數(shù)據(jù)?

    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. 如何取得命令的返回狀態(tài)值?

sqlcode=0

 

97. 如何知道用戶擁有的權(quán)限?

    SELECT * FROM dba_sys_privs ;

 

98. 從網(wǎng)上下載的ORACLE9I與市場(chǎng)上賣的標(biāo)準(zhǔn)版有什么區(qū)別?

          從功能上說沒有區(qū)別,只不過oracle公司有明文規(guī)定;從網(wǎng)站上下載的oracle產(chǎn)品不得用于 商業(yè)用途,否則侵權(quán)。

 

99. 怎樣判斷數(shù)據(jù)庫是運(yùn)行在歸檔模式下還是運(yùn)行在非歸檔模式下?

進(jìn)入dbastudio,歷程--〉數(shù)據(jù)庫---〉歸檔查看。

 

100. sql>startup pfile和ifile,spfiled有什么區(qū)別?

pfile就是Oracle傳統(tǒng)的初始化參數(shù)文件,文本格式的。
ifile類似于c語言里的include,用于把另一個(gè)文件引入
spfile是9i里新增的并且是默認(rèn)的參數(shù)文件,二進(jìn)制格式
startup后應(yīng)該只可接pfile

 

101. 如何搜索出前N條記錄?

SELECT * FROM empLOYEE WHERE ROWNUM < n
ORDER BY empno;

 

102. 如何知道機(jī)器上的Oracle支持多少并發(fā)用戶數(shù)?

        SQL>conn internal  ;
SQL>show parameter processes ;

 

103. db_block_size可以修改嗎?

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

 

104. 如何統(tǒng)計(jì)兩個(gè)表的記錄總數(shù)?

   select (select count(id) from aa)+(select count(id) from bb) 總數(shù) from dual;

 

105. 怎樣用Sql語句實(shí)現(xiàn)查找一列中第N大值?

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



 

106. 如何在給現(xiàn)有的日期加上2年?(

    select add_months(sysdate,24) from dual;

 

107. USED_UBLK為負(fù)值表示什么意思?

       It is "harmless".

 

108. Connect string是指什么?

       應(yīng)該是tnsnames.ora中的服務(wù)名后面的內(nèi)容

 

109. 怎樣擴(kuò)大REDO LOG的大。

        建立一個(gè)臨時(shí)的redolog組,然后切換日志,刪除以前的日志,建立新的日志。

 

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

   沒有限制.

 

111. 返回大于等于N的最小整數(shù)值?

    SELECT CEIL(N)  FROM DUAL;

 

112. 返回小于等于N的最小整數(shù)值?

    SELECT FLOOR(N)  FROM DUAL;

 

113. 返回當(dāng)前月的最后一天?

     SELECT LAST_DAY(SYSDATE)  FROM DUAL;

 

114. 如何不同用戶間數(shù)據(jù)導(dǎo)入?

  IMP  SYSTEM/MANAGER  FILE=AA.DMP  FROMUSER=USER_OLD   TOUSER=USER_NEW  ROWS=Y  INDEXES=Y ;

 

115. 如何找數(shù)據(jù)庫表的主鍵字段的名稱?

   SQL>SELECT * FROM user_constraints WHERE CONSTRAINT_TYPE='P' and   table_name='TABLE_NAME';
 

116. 兩個(gè)結(jié)果集互加的函數(shù)?

   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. 兩個(gè)結(jié)果集互減的函數(shù)?
 SQL>SELECT * FROM BSEMPMS_OLD MINUS SELECT * FROM BSEMPMS_NEW;
 

118. 如何配置Sequence?

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

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

119>.取時(shí)間點(diǎn)的年份的寫法:
     SELECT TO_CHAR(SYSDATE,'YYYY') FROM DUAL;

 

120>.取時(shí)間點(diǎn)的月份的寫法:
     SELECT TO_CHAR(SYSDATE,'MM') FROM DUAL;

 

121>.取時(shí)間點(diǎn)的日的寫法:
     SELECT TO_CHAR(SYSDATE,'DD') FROM DUAL;

 

122>.取時(shí)間點(diǎn)的時(shí)的寫法:
     SELECT TO_CHAR(SYSDATE,'HH24') FROM DUAL;

 

123>.取時(shí)間點(diǎn)的分的寫法:
     SELECT TO_CHAR(SYSDATE,'MI') FROM DUAL;

 

124>.取時(shí)間點(diǎn)的秒的寫法:
     SELECT TO_CHAR(SYSDATE,'SS') FROM DUAL;

 

125>.取時(shí)間點(diǎn)的日期的寫法:
     SELECT TRUNC(SYSDATE) FROM DUAL;

 

126>.取時(shí)間點(diǎn)的時(shí)間的寫法:
     SELECT TO_CHAR(SYSDATE,'HH24:MI:SS') FROM DUAL;

 

127>.日期,時(shí)間形態(tài)變?yōu)樽址螒B(tài)
     SELECT TO_CHAR(SYSDATE) FROM DUAL;

 

128>.將字符串轉(zhuǎn)換成日期或時(shí)間形態(tài):
     SELECT TO_DATE('2003/08/01') FROM DUAL;

 

129>.返回參數(shù)的星期幾的寫法:
     SELECT TO_CHAR(SYSDATE,'D') FROM DUAL;

 

130>.返回參數(shù)一年中的第幾天的寫法:
     SELECT TO_CHAR(SYSDATE,'DDD') FROM DUAL;

 

131>.返回午夜和參數(shù)中指定的時(shí)間值之間的秒數(shù)的寫法:
     SELECT TO_CHAR(SYSDATE,'SSSSS') FROM DUAL;

 

132>.返回參數(shù)中一年的第幾周的寫法:
     SELECT TO_CHAR(SYSDATE,'WW') FROM DUAL;
  
  如有問題歡迎大家一起探討﹗

 

     待續(xù)……


最新更新
·SQL Server 2005刪除用戶失敗
·SQL Server中刪除重復(fù)數(shù)據(jù)的
·經(jīng)典SQL語句大全
·SQL Server 2005與ASP.NET/A
·三種查看MySQL數(shù)據(jù)庫版本的方
·SQL Server 2005 Express 遠(yuǎn)
·啟用SQL Server 2005 Expres
·Windows下如何安裝或卸載MyS
·解決MySQL5數(shù)據(jù)庫連接超時(shí)問
·清除SQL Server日志的兩種方
相關(guān)信息
·2008主流數(shù)據(jù)庫產(chǎn)品回顧與展望
·安裝Oracle后配置和啟動(dòng)企業(yè)管理器的方法
·簡(jiǎn)單介紹Oracle 9i的16種數(shù)據(jù)類型
·如何在Oracle中導(dǎo)入dmp數(shù)據(jù)庫文件
·把Oracle查詢轉(zhuǎn)換為SQL Server
·輕松修改Oracle數(shù)據(jù)庫表的大小
·實(shí)例講解Oracle里抽取隨機(jī)數(shù)的多種方法
·Oracle在Linux操作系統(tǒng)下的安裝小結(jié)
·用Oracle8i修復(fù)數(shù)據(jù)庫壞塊的三種方法
·在Oracle中導(dǎo)出、導(dǎo)入dmp數(shù)據(jù)庫文件
畫心
愚愛
偏愛
火苗
白狐
畫沙
犯錯(cuò)
歌曲
傳奇
稻香
小酒窩
獅子座
小情歌
全是愛
棉花糖
海豚音
我相信
甩蔥歌
這叫愛
shero
走天涯
琉璃月
Nobody
我愛他
套馬桿
愛是你我
最后一次
少女時(shí)代
灰色頭像
斷橋殘雪
美了美了
狼的誘惑
我很快樂
星月神話
心痛2009
愛丫愛丫
半城煙沙
旗開得勝
郎的誘惑
愛情買賣
2010等你來
我叫小沈陽
i miss you
姑娘我愛你
我們都一樣
其實(shí)很寂寞
我愛雨夜花
變心的玫瑰
犀利哥之歌
你是我的眼
你是我的OK繃
貝多芬的悲傷
哥只是個(gè)傳說
丟了幸福的豬
找個(gè)人來愛我
要嫁就嫁灰太狼
如果這就是愛情
我們沒有在一起
寂寞在唱什么歌
斯琴高麗的傷心
別在我離開之前離開
不是因?yàn)榧拍畔肽?/a>
愛上你等于愛上了錯(cuò)
在心里從此永遠(yuǎn)有個(gè)你
一個(gè)人的寂寞兩個(gè)人的錯(cuò)