Oracle 資料庫小用兩則

2021-09-22 05:19:23 字數 1525 閱讀 2554

今天寫下兩個小問題,都與資料庫相關。

第乙個:前幾天,實驗室大遷移,學校網路也重新規劃,oracle的客戶端設定也要隨之改變,因為,伺服器的ip位址換掉了(這也就是在很多情況下,連線伺服器或者其他節點機器時,建議使用主機名的緣故——使用主機名,不會因為ip的更換而做相應的改變)。當然,重新安裝肯定是乙個方法,但是,毫無疑問,肯定有乙個簡單的設定即可完成,否則,oracle就不叫「產品」了。

修改oracle客戶端連線屬性方法:

進入:%oraclehome%/ora92/network/admin,修改tnsnames.ora檔案,將其中的host修改為新的ip即可。例如:

bjmigyj =

(de.ion =

(address_list =

(address = (protocol = tcp)(host = 10.17.158.133)(port = 1521)) )

(connect_data =

(service_name = bjmigyj) )

)第二個:需求很明確,一張日誌表,有一字段為requesttime(請求時間),需要以小時為單位取得請求數最多的時間段。同時,提供了模糊查詢情況下的該統計功能,所謂模糊查詢情況,就是可以限定某段時期,查詢到該時期內的訪問高峰。

//構造查詢條件:

public string buildwhere(string begintime,string endtime) else

} else//無開始時間

} return strsql; }

//獲取請求集中的時間段:返回時間+數量

public string gethighesthour(string where) throws sqlexception

} catch (exception e) finally

return time + "時之後的乙個小時內,請求數為:" +count ; }

具體的jsp就不再說明,通過上述兩個方法,配合頁面引數,最後組合的查詢類似如下(下面的情況只輸入了開始時間):

select to_char(requesttime,'yyyy-mm-dd-hh24') requesttime,count(*)

from audit_admin_log 

where requesttime > to_date('2007-04-06 16:25:15','yyyy-mm-dd hh24: mi: ss')

group by to_char(requesttime,'yyyy-mm-dd-hh24') order by count(*) desc;

另: 級聯刪除(刪除資源**為40及之下的所有資源記錄)

delete from sysmgr_resource r where r.resource_id in  (select t.resource_id

from sysmgr_resource t

connect by t.parent_id = prior t.resource_id

start with t.resource_code = '40')

兩則小故事

誰該下去 英國某家報紙曾舉辦一項有獎徵答活動,題目是 在乙個熱氣球上載有三人。一是環保專家,他可使人們免於因環境汙染而死亡的厄運 二是核專家,他有能力防止全球性的核戰爭 三是糧食專家,他能使幾千萬人脫離饑荒。此刻熱氣球即將墜毀,必須丟出乙個人以減輕載重,問該丟下誰?應答信如雪片飛來,結果,鉅額獎金的...

無資料庫日誌檔案恢復資料庫方法兩則

方法一 1.新建乙個同名的資料庫 2.再停掉sql server 注意不要分離資料庫 3.用原資料庫的資料檔案覆蓋掉這個新建的資料庫 4.再重啟sql server 5.此時開啟企業管理器時會出現置疑,先不管,執行下面的語句 注意修改其中的資料庫名 6.完成後一般就可以訪問資料庫中的資料了,這時,資...

無資料庫日誌檔案恢復資料庫方法兩則

方法一 1.新建乙個同名的資料庫 2.再停掉sql server 注意不要分離資料庫 3.用原資料庫的資料檔案覆蓋掉這個新建的資料庫 4.再重啟sql server 5.此時開啟企業管理器時會出現置疑,先不管,執行下面的語句 注意修改其中的資料庫名 6.完成後一般就可以訪問資料庫中的資料了,這時,資...