function isDate(oStartDate){
var a=/^(\d{1,4})(-|\/)(\d{1,2})\2(\d{1,2})/;
if (!a.test(oStartDate)){
return false
} else{
return true
}
}
posted @
2008-03-05 09:23 kylixlu 閱讀(1259) |
評論 (0) |
編輯 收藏
網上COPY地,拿來用一下,哈
1
<script language="javascript">
2
3
//驗證給定的日期是否合法 ,參數格式要求:yyyy-mm-dd 可以根據情況更改正則表達式
4
function isDate(oStartDate)
5

{
6
//對日期格式進行驗證 要求為2000-2099年 格式為 yyyy-mm-dd 并且可以正常轉換成正確的日期
7
var pat_hd=/^20\d
{2}-((0[1-9]
{1})|(1[0-2]
{1}))-((0[1-9]
{1})|([1-2]
{1}[0-9]
{1})|(3[0-1]
{1}))$/;
8
9
try
{
10
if(!pat_hd.test(oStartDate))
{throw "日期非法!";}
11
var arr_hd=oStartDate.split("-");
12
var dateTmp;
13
dateTmp= new Date(arr_hd[0],parseFloat(arr_hd[1])-1,parseFloat(arr_hd[2]));
14
if(dateTmp.getFullYear()!=parseFloat(arr_hd[0]) || dateTmp.getMonth()!=parseFloat(arr_hd[1]) -1 || dateTmp.getDate()!=parseFloat(arr_hd[2]))
15
{
16
throw "日期非法!";
17
}
18
}
19
catch(ex)
20
{
21
if(ex.description)
22
{return false;}
23
else
24
{return false;}
25
}
26
return true;
27
}
28
29
//調用
30
31
alert(isDate("2005-12-12"));
32
alert(isDate("2004-13-30"));
33
alert(isDate("2005-12-32"));
34
alert(isDate("2005-02-30"));
35
36
</script>
37
38
posted @
2008-02-28 20:06 kylixlu 閱讀(266) |
評論 (0) |
編輯 收藏
昨天把公司機器關了,今天早上發現ORACLE啟動不了,輸入cmd->lsnrctl后,出現如下錯誤,

經查資料,發現是主機名可能解析有問題,后來在D:\oracle\ora92\network\admin下打開listener.ora文件后將HOST后的主機名 (ADDRESS = (PROTOCOL = TCP)(HOST = SUZSOFT-8CB5627)(PORT = 1521))
改成IP即可解決上面遇到問題 (ADDRESS = (PROTOCOL = TCP)(HOST = 172.16.7.115)(PORT = 1521))
posted @
2008-02-27 10:16 kylixlu 閱讀(4182) |
評論 (3) |
編輯 收藏
很多人也許并不清楚,null event其實不是空事件,因為不是沒有等待事件,而是Oracle忘記了剛才等待的事件的名字具體是什么了,但卻保留了該事件的真實情況。Oracle的開發人員直到9.2.0.3才更新了這些事件的名稱。
那是不是我們每當遇到性能問題的時候都要patch到9.2.0.3呢?
我們已經知道他的真實情況依然在v$session_wait的p1、p2、p3參數里體現,所以,我們可以根據這些參數,找出這個null event究竟是什么等待事件。
相關信息:
1. lck processes to pick up extra or missed 'posts' (messages)。
in all cases that can be identified the wait time is zero,
although on most ports this is changed to 1/100th second in
order to force the process to be rescheduled.
2. multiple db writers.
two cases:
- when the master has sent i/o requests to the slaves, it
waits on this event for up to 6 seconds until the slaves
signal that the i/o is complete.
- the slaves wait on this event for up to 3 seconds whilst
waiting for requests from the master db writer.
目前已經被證實的會涉及到null event
的等待事件還有有sql.net message to client、
db file scattered (or sequential) read
posted @
2008-02-15 01:03 kylixlu 閱讀(196) |
評論 (0) |
編輯 收藏
與無壓縮格式下存儲數據相比,新的Oracle數據壓縮技術能夠確保以較小的開銷節省三倍以上的磁盤存儲空間。這一點比僅節省磁盤空間要具有更大的優勢,因為它能夠使企業節約更多的開支,以便有更多的資金來鞏固自己的地位。
自動診斷知識庫(Automatic Diagnostic Repository,ADR)是專門針對嚴重錯誤的知識庫。該知識庫基本上能夠自動完成一些以往需要由數據庫管理員來手動完成的操作。
作為ADR的一部分,SQL性能分析器(SQL Performance Analyzer,SPA)是最讓人驚喜的特性之一。SQL性能分析器是一個整體調整工具,管理員可以通過該工具在數據庫上定義和重演(replay) 一個典型的工作負載,之后管理員可以調節整體參數來使數據庫盡快的達到最佳性能——而這一任務同樣也是許多年以來由數據庫管理員手動完成的。
由于獲得了最優的初始參數,數據庫管理員就不需要調整數以萬計的SQL語句。管理員需要做的就是給定一個典型的負載 ,由SAP根據歷史記錄來決定SQL的最終設置,而不用管理員來檢測哪一個SQL設置是最合理的。
多年以來,甲骨文公司一直在努力完成地另一個新特性便是“聯機更新”(在不down機的情況下更新軟件)。實際上,很難從軟件工程的角度來設計一個運行時能自動升級的軟件。由于真正的應用集群(Real Application Clusters ,RAC)特性,甲骨文公司再一次對其他的數據庫供應商造成了更大的壓力。在實際的使用過程中,數據庫產品的用戶總是希望產品有持續的高可用性,這并不是說只需滿足下次補丁更新之前的3年的時間就夠了。
自動內存管理特性可以追根溯源至Oracle 9i,那時甲骨文公司推出首款自動調節存儲池的工具。AMM工具其實就是一種探測機制。實際上,Oracle 11g 有很多隨機訪問存儲池,當AMM探測到某個存儲池中已滿時,它將整個RAM從一個區域分配到其他相對合適的區域。
posted @
2008-02-15 01:01 kylixlu 閱讀(210) |
評論 (0) |
編輯 收藏