锘??xml version="1.0" encoding="utf-8" standalone="yes"?>亚洲人成在线免费观看,亚洲AV中文无码乱人伦,久久亚洲精品无码AV红樱桃http://www.tkk7.com/caojianhua/category/47353.html浣犲繀欏繪壙璁わ紝鎴戜滑鐢熷瓨鐨勮繖涓笘鐣屽彇鍐充簬鑷韓鐨勮兘鍔涜岄潪鍒漢鐨勪繚鎶?AW)zh-cnFri, 13 Jul 2012 17:51:29 GMTFri, 13 Jul 2012 17:51:29 GMT60oracle鍒嗛〉鏌ユ壘鏃訛紝start涓巗ize鍦╥batis涓殑璁劇疆http://www.tkk7.com/caojianhua/archive/2012/07/13/383018.html鍒濅竴涓冩湀鍒濅竴涓冩湀Fri, 13 Jul 2012 06:41:00 GMThttp://www.tkk7.com/caojianhua/archive/2012/07/13/383018.htmlhttp://www.tkk7.com/caojianhua/comments/383018.htmlhttp://www.tkk7.com/caojianhua/archive/2012/07/13/383018.html#Feedback0http://www.tkk7.com/caojianhua/comments/commentRss/383018.htmlhttp://www.tkk7.com/caojianhua/services/trackbacks/383018.html
select * from
  (select t.*, romnum rn from
    (select * from user
       where score > #score# 
       order by $orderby$
     ) t 
   where rownum <= #start# + #size# )
where rn > #start#
鍦ㄦ暟鎹噺杈冨皯鏃訛紝浠ヤ笂璇彞娌℃湁闂錛屼絾鏄湪杈懼埌500w+鏁版嵁閲忔椂錛屽氨浼氬彂鐢熸ュ墽鐨勬ц兘涓嬮檷錛岀粡榪囨祴璇曪紝鍙戠幇搴旇鏀逛負浠ヤ笅鐨勮鍙ワ紝灝卞彲浠ラ伩鍏嶏紝鍦ㄥ崈涓囨暟鎹互涓婁粛鍙互鍦ㄧ櫨姣寰楀嚭緇撴灉
select * from
  (select t.*, romnum rn from
    (select * from user
       where score > #score# 
       order by $orderby$
     ) t 
   where rownum <= $start$ + $end$ )
where rn > #start#

鍥犱負ibatis浼氬皢#xxx#鍙傛暟瑙f瀽涓篜reparedStatement涓殑錛燂紝浣嗘槸濡傛灉浣跨敤#start#+#size#錛屼細浜х敓?+?鐨勮鍙ワ紝褰卞搷oracle璇彞鍔ㄦ佽В鏋愶紝瀹為檯涓婅繖涓弬鏁板湪鎵ц鏃跺畬鍏ㄥ彲浠ュ厛璁$畻鍜岋紝鍐嶄綔涓轟竴涓間紶鍏ヨ鍙ワ紝閲囩敤$start$+$size$姝f槸鍋氬埌浜嗚繖鐐癸紝澶уぇ鍔犲揩浜嗘墽琛岄熷害



鍒濅竴涓冩湀 2012-07-13 14:41 鍙戣〃璇勮
]]>
Oracle鏁版嵁綾誨瀷涔媙umberhttp://www.tkk7.com/caojianhua/archive/2011/01/24/343461.html鍒濅竴涓冩湀鍒濅竴涓冩湀Mon, 24 Jan 2011 13:56:00 GMThttp://www.tkk7.com/caojianhua/archive/2011/01/24/343461.htmlhttp://www.tkk7.com/caojianhua/comments/343461.htmlhttp://www.tkk7.com/caojianhua/archive/2011/01/24/343461.html#Feedback0http://www.tkk7.com/caojianhua/comments/commentRss/343461.htmlhttp://www.tkk7.com/caojianhua/services/trackbacks/343461.html
number鏁版嵁綾誨瀷

number綾誨瀷鐨勮娉曞緢綆鍗曪細number(p,s)錛?br /> p錛氱簿搴︿綅錛宲recision錛屾槸鎬繪湁鏁堟暟鎹綅鏁幫紝鍙栧艱寖鍥存槸38錛岄粯璁ゆ槸38錛屽彲浠ョ敤瀛楃*琛ㄧず38銆?br /> s錛氬皬鏁頒綅錛宻cale錛屾槸灝忔暟鐐瑰彸杈圭殑浣嶆暟錛屽彇鍊艱寖鍥存槸-84~127錛岄粯璁ゅ煎彇鍐充簬p錛屽鏋滄病鏈夋寚瀹歱錛岄偅涔坰鏄渶澶ц寖鍥達紝濡傛灉鎸囧畾浜唒錛岄偅涔坰=0銆?br /> p錛歩s the precision,or the total number of digits. Oracle guarantees the portability of numbers with precision ranging from 1 to 38.
s錛歩s the scale, or the number of digits to the right of the decimal point. The scale can range from -84 to 127.

number綾誨瀷鐨刾鍜宻錛屼笌鍏跺簳灞傚瓨鍌ㄥ畬鍏ㄦ病鏈夊叧緋伙紝鏍規湰涓嶄細褰卞搷鏁版嵁鍦ㄧ鐩樹笂濡備綍瀛樺偍錛屽畠鍙細褰卞搷鍏佽鍝簺鍊間互鍙婃暟鍊煎浣曡垗鍏ワ紝浣犲彲浠ヨ涓哄叾鏄鏁版嵁鐨?#8220;緙栬緫”銆傜畝鍗曠殑璇達紝綺懼害浣峱琛ㄧず鏁板兼渶澶氳兘鏈夊灝戜釜鏈夋晥鏁板瓧錛岃屽皬鏁頒綅s琛ㄧず鏈澶氳兘鏈夊灝戜綅灝忔暟銆傛崲鍙ヨ瘽璇達紝p琛ㄧず涓鍏辨湁澶氬皯浣嶆湁鏁堟暟瀛楋紙鍗沖皬鏁扮偣宸﹁竟鏈澶氭湁p-s浣嶆湁鏁堟暟瀛楋級錛宻琛ㄧず灝忔暟鐐瑰彸杈規湁s浣嶆湁鏁堟暟瀛椼傚number(5,2)綾誨瀷鐨勬暟鎹紝灝辮〃紺哄皬鏁扮偣宸﹁竟鏈澶氭湁3浣嶆湁鏁堟暟瀛楋紝鍙寵竟鏈澶氭湁2浣嶆湁鏁堟暟瀛楋紝鍔犺搗鏉ュ氨鏄渶澶氭湁5浣嶆湁鏁堟暟瀛楋紝瓚呰繃榪欎釜鑼冨洿鐨勬暟瀛楀氨涓嶈兘姝g‘鐨勫瓨鍌ㄤ笅鏉ワ紝娉ㄦ剰榪欓噷璇寸殑鏄笉鑳芥紜瓨鍌紝浣嗗茍涓嶆槸涓嶈兘瀛樺偍銆?br />
鏈楂樻暣鏁頒綅鏁幫紳p-s
s姝f暟錛屽皬鏁扮偣鍙寵竟鎸囧畾浣嶇疆寮濮嬪洓鑸嶄簲鍏?
s璐熸暟錛屽皬鏁扮偣宸﹁竟鎸囧畾浣嶇疆寮濮嬪洓鑸嶄簲鍏?
s鏄?鎴栬呮湭鎸囧畾錛屽洓鑸嶄簲鍏ュ埌鏈榪戞暣鏁?
褰損灝忎簬s鏃跺欙紝琛ㄧず鏁板瓧鏄粷瀵瑰煎皬浜?鐨勬暟瀛楋紝涓斾粠灝忔暟鐐瑰彸杈瑰紑濮嬬殑鍓峴-p浣嶅繀欏繪槸0錛屼繚鐣檚浣嶅皬鏁般?

p>0錛屽s鍒?縐嶆儏鍐碉細
1. s>0
綺劇‘鍒板皬鏁扮偣鍙寵竟s浣嶏紝騫跺洓鑸嶄簲鍏ャ傜劧鍚庢楠屾湁鏁堟暟浣嶆槸鍚?lt;=p錛涘鏋渟>p錛屽皬鏁扮偣鍙寵竟鑷沖皯鏈塻-p涓?濉厖銆?
2. s<0
綺劇‘鍒板皬鏁扮偣宸﹁竟s浣嶏紝騫跺洓鑸嶄簲鍏ャ傜劧鍚庢楠屾湁鏁堟暟浣嶆槸鍚?lt;=p+|s|

鍏蜂綋鏁版嵁鍙弬鑰冧笅琛?br />

Value

Datatype

Stored Value

123.2564

NUMBER

123.2564

1234.9876

NUMBER(6,2)

1234.99

12345.12345

NUMBER(6,2)

Error

1234.9876

NUMBER(6)

1235

12345.345

NUMBER(5,-2)

12300

1234567

NUMBER(5,-2)

1234600

12345678

NUMBER(5,-2)

Error

123456789

NUMBER(5,-4)

123460000

1234567890

NUMBER(5,-4)

Error

12345.58

NUMBER(*, 1)

12345.6

0.1

NUMBER(4,5)

Error

0.01234567

NUMBER(4,5)

0.01235

0.09999

NUMBER(4,5)

0.09999

0.099996

NUMBER(4,5)

Error


閲岄潰鍙戠敓閿欒鐨勮鏈夌殑鏄洜涓烘簮鏁版嵁瓚呰繃浜嗗彲浠ヨ〃紺虹殑鑼冨洿錛屾湁鐨勬槸鍥犱負榪涜灝忔暟鍥涜垗浜斿叆鍚庤秴榪囦簡鍙互琛ㄧず鐨勮寖鍥淬?br />
浠ヤ笅鏄竴浜涗緥瀛?br />
1. s>0

綺劇‘鍒板皬鏁扮偣鍙寵竟s浣嶏紝騫跺洓鑸嶄簲鍏ャ傜劧鍚庢楠屾湁鏁堟暟浣嶆槸鍚?lt;=p錛?

ZWF.YUDONG>create table t_n(id number(5,2));

Table created.

ZWF.YUDONG>insert into t_n values(123.45);

1 row created.

ZWF.YUDONG>insert into t_n values(123.455);

1 row created.

ZWF.YUDONG>select * from t_n;

        ID
----------
    123.45
    123.46

2 rows selected.

ZWF.YUDONG>insert into t_n values(1.234);

1 row created.

ZWF.YUDONG>select * from t_n;

        ID
----------
    123.45
    123.46
      1.23

3 rows selected.

ZWF.YUDONG>insert into t_n values(.001);

1 row created.

ZWF.YUDONG>select * from t_n;

        ID
----------
    123.45
    123.46
      1.23
         0

4 rows selected.

ZWF.YUDONG>insert into t_n values(1234.56);
insert into t_n values(1234.56)
                       *
ERROR at line 1:
ORA-01438: value larger than specified precision allowed for this column


濡傛灉s>p錛屽皬鏁扮偣鍙寵竟鑷沖皯鏈塻-p涓?濉厖銆?

ZWF.YUDONG>create table t_n(id number(4,5));

Table created.

ZWF.YUDONG>insert into t_n values(1);
insert into t_n values(1)
                       *
ERROR at line 1:
ORA-01438: value larger than specified precision allowed for this column


ZWF.YUDONG>insert into t_n values(.1);
insert into t_n values(.1)
                       *
ERROR at line 1:
ORA-01438: value larger than specified precision allowed for this column


ZWF.YUDONG>insert into t_n values(.01);

1 row created.

ZWF.YUDONG>commit;

Commit complete.

ZWF.YUDONG>select * from t_n;

        ID
----------
       .01

1 row selected.

ZWF.YUDONG>insert into t_n values(.001);

1 row created.

ZWF.YUDONG>insert into t_n values(.0001);

1 row created.

ZWF.YUDONG>insert into t_n values(.00001);

1 row created.

ZWF.YUDONG>insert into t_n values(.000001);   --瓚呰繃鍒誨害瀛樺偍0

1 row created.

ZWF.YUDONG>select * from t_n;

        ID
----------
       .01
      .001
     .0001
    .00001
         0


10 rows selected.

ZWF.YUDONG>col dp for a50
ZWF.YUDONG>select id,dump(id) dp,length(id),vsize(id) from t_n;  --vsize鍜宒ump鐨勬槸瀛楄妭鏁幫紝length鏄暟鍊煎疄闄呬綅鏁幫紙鍚皬鏁扮偣錛?

        ID DP                                                 LENGTH(ID)  VSIZE(ID)
---------- -------------------------------------------------- ---------- ----------
       .01 Typ=2 Len=2: 192,2                                          3          2
      .001 Typ=2 Len=2: 191,11                                         4          2
     .0001 Typ=2 Len=2: 191,2                                          5          2
    .00001 Typ=2 Len=2: 190,11                                         6          2
         0 Typ=2 Len=1: 128                                            1          1

5 rows selected.


2. s<0

綺劇‘鍒板皬鏁扮偣宸﹁竟s浣嶏紝騫跺洓鑸嶄簲鍏ャ傜劧鍚庢楠屾湁鏁堟暟浣嶆槸鍚?lt;=p+|s|

ZWF.YUDONG>create table t_n(id number(5,-2));

Table created.

ZWF.YUDONG>insert into t_n values(12345);

1 row created.

ZWF.YUDONG>select * from t_n;

        ID
----------
     12300

1 row selected.

ZWF.YUDONG>insert into t_n values(123456);

1 row created.

ZWF.YUDONG>insert into t_n values(1234567);

1 row created.

ZWF.YUDONG>select * from t_n;

        ID
----------
     12300
    123500
   1234600

3 rows selected.

ZWF.YUDONG>insert into t_n values(12345678);
insert into t_n values(12345678)
                       *
ERROR at line 1:
ORA-01438: value larger than specified precision allowed for this column

oracle鐨刵umber綾誨瀷瀛樺偍緇撴瀯

oracle閲囩敤鍙橀暱瀛樺偍number鏁版嵁綾誨瀷錛堟寜涓瀹氳鍒欒繘琛岃漿鎹㈡垚2榪涘埗緙栫爜鏍煎紡瀛樺偍錛夈?

oracle鏁版嵁搴撲腑瀛樺偍鐨刵umber綾誨瀷鍖呭惈3涓儴鍒? HEAD閮ㄥ垎, DATA閮ㄥ垎, 絎﹀彿浣嶃?

瀵規鏁版潵璇? 絎﹀彿浣嶇渷鐣? 瀵?鏉ヨ, oracle瀛樺偍鐨勬槸X80錛?28錛夈?

ZWF.YUDONG>select dump(0) from dual;

DUMP(0)
----------------
Typ=2 Len=1: 128

1 row selected.

ZWF.YUDONG>select dump(1) from dual;

DUMP(1)
------------------
Typ=2 Len=2: 193,2

1 row selected.

ZWF.YUDONG>select dump(-1) from dual;

DUMP(-1)
-----------------------
Typ=2 Len=3: 62,100,102  

1 row selected.

HEAD閮ㄥ垎涓轟竴涓瓧鑺?浣? 灝辨槸鍓嶉潰鐪嬪埌鐨?28, 193錛?2銆傜敱璇ラ儴鍒嗘垜浠彲浠ョ湅鍑簄umber綾誨瀷鐨勫熀鏈俊鎭紝鍥犱負璁捐榪欑瀛樺偍鏍煎紡鐨勬椂鍊? oracle甯屾湜浠ュ崄鍏繘鍒?0-FF鏉ヨ〃紺烘墍鏈?
鐨刵umber, 鎵浠ヤ負浜嗙紪鐮佺殑瀵圭О, 棣栧厛灝唍umber鍒嗕負姝h礋, 鎵浠ヤ互00-FF鐨勪腑闂翠綅緗?0, 涔熷氨鏄崄榪涘埗鐨?28鏉ヨ〃紺?, HEAD閮ㄥ垎灝忎簬80,鍗充負璐熸暟,澶т簬80鍗充負姝f暟銆侽RACLE鍐嶆瀵?
00-80, 80-FF榪涜瀵瑰垎錛?

00-3E 琛ㄧず: number <= -1
3F-7F 琛ㄧず: -1 < number < 0
81-C0 琛ㄧず: 0 < number < 1
C1-FF 琛ㄧず錛歯umber >= 1

浠嶩EAD閮ㄥ垎鎴戜滑鍙互涔熺湅鍑烘暟鎹殑浣嶆暟淇℃伅錛屾槸鍚﹀惈鏈夊皬鏁幫紝鍙互鏍規嵁HEAD鐨勪俊鎭垽鏂皬鏁扮偣鐨勪綅緗傜敱浜庢暟鎹儴鍒嗕綆浣?鐨刵嬈℃柟浣嶄釜0鏄笉琚瓨鍌ㄧ殑錛屾暟鎹睍鐜扮殑鏃跺檕racle
鏍規嵁HEAD鐨勪俊鎭粰琛ュ厖鏈綅鐨?銆?

ZWF.YUDONG>select dump(123456789) from dual;

DUMP(123456789)
------------------------------
Typ=2 Len=6: 197,2,24,46,68,90 --197錛圕5錛夌殑鍚箟錛氳〃紺烘暟瀛?23456789澶т簬1錛?97-193(鏁板瓧1鍗犵敤2涓瓧鑺傝鍊間負193) = 4 錛屾墍浠ヨ鏁板瓧鍗犵敤6錛?+4錛変釜瀛楄妭銆?

1 row selected.


鐒跺悗,鎴戜滑鍐嶆潵鐪嬫暟鎹儴鍒? ORACLE瀵瑰崄榪涘埗鐨勬暟瀛?鏁存暟閮ㄥ垎,灝忔暟閮ㄥ垎姝eソ鐩稿弽)鏄袱浣嶄袱浣嶈繘琛屽瓨鍌ㄧ殑(浠庡彸寰宸︾殑欏哄簭), 渚嬪瀵?234, ORACLE浼氬垎鍒12, 34榪涜瀛樺偍.
鎵浠ュ彧闇瑕佸(+-)1-99榪涜緙栫爜

1 --- 99 鍒嗗埆鐢ㄥ崄鍏繘鍒?-64琛ㄧず錛屽氨鏄?-100,

-1--- -99 鐢ㄥ崄鍏繘鍒?4-2琛ㄧず錛屽氨鏄?00-2

ZWF.YUDONG>select dump(12345) from dual;

DUMP(12345)
------------------------
Typ=2 Len=4: 195,2,24,46  --鏁版嵁閮ㄥ垎2,24,46 琛ㄧず 錛?-1=1錛?4-1=23錛?6-1=45錛夛紱HEAD閮ㄥ垎琛ㄧず12345 >= 1,鍗犵敤195-193+2=4瀛楄妭銆?

1 row selected.


SYS.YUDONG>select dump(1100) from dual; 

DUMP(1100)
-------------------
Typ=2 Len=2: 194,12       --濡傛灉浠庡彸杈硅搗錛岃繛緇?鐨刵嬈℃柟浣嶄負0錛宱racle涓嬈℃帓瑙︼紙涓嶅瓨鍌級鍙槸浣嶆暟鍔?銆傚彲浠ュ姣攄ump(11)鐨勬儏鍐電湅鐪嬨?

1 row selected.

SYS.YUDONG>select dump(11) from dual;

DUMP(11)
-------------------
Typ=2 Len=2: 193,12        --榪欓噷鏁版嵁閮ㄥ垎鍜?100鏄竴鏍風殑錛屾湯浣嶇殑2涓?娌℃湁瀹為檯瀛樺偍錛岄暱搴?93姣?94灝?銆?

1 row selected.

--瀵逛簬鍚皬鏁?璐熸暟銆佹暣鏁?縐嶆儏鍐?鐨勬儏鍐碉細

1銆佽礋鏁?

SYS.YUDONG>select dump(-1.2) from dual;

DUMP(-1.2)
--------------------------
Typ=2 Len=4: 62,100,81,102    --HEAD=62錛?E錛夎〃紺鴻鏁板煎皬浜庣瓑浜?1;鏁版嵁閮ㄥ垎錛氭暣鏁伴儴鍒嗙殑-1瀛樺偍涓?00錛屽皬鏁伴儴鍒嗕粠宸﹀線鍙?浣嶄竴緇撳悎錛屼笉瓚?浣嶅悗杈硅ˉ涓涓?銆?
                              瀵瑰簲鍏崇郴鍙樹負9錛?...1琛ㄧず1錛?...9錛岀湅涓嬮潰鍑犱釜渚嬪瓙錛屽鏋滆凍2浣嶏紝榪樻槸鎸夌収涓婅竟璇寸殑瑙勫緥錛?1--- -99 鐢ㄥ崄鍏繘鍒?4-2琛ㄧず錛屽氨鏄?00-2錛夈?

1 row selected.


ZWF.YUDONG>select dump(-2.1) from dual;

DUMP(-2.1)
-------------------------
Typ=2 Len=4: 62,99,91,102

1 row selected.

ZWF.YUDONG>select dump(-2.2) from dual;

DUMP(-2.2)
-------------------------
Typ=2 Len=4: 62,99,81,102

1 row selected.

ZWF.YUDONG>select dump(-2.9) from dual;

DUMP(-2.9)
-------------------------
Typ=2 Len=4: 62,99,11,102

1 row selected.

ZWF.YUDONG>select dump(-2.12) from dual;

DUMP(-2.12)
-------------------------
Typ=2 Len=4: 62,99,89,102

1 row selected.

ZWF.YUDONG>select dump(-2.13) from dual;

DUMP(-2.13)
-------------------------
Typ=2 Len=4: 62,99,88,102

1 row selected.

ZWF.YUDONG>select dump(-2.123) from dual;

DUMP(-2.123)
----------------------------
Typ=2 Len=5: 62,99,89,71,102

1 row selected.


2銆佹鏁?

SYS.YUDONG>select dump(1.222) from dual;

DUMP(1.222)
------------------------
Typ=2 Len=4: 193,2,23,21      --HEAD=193(C1)琛ㄧず璇ユ暟瀛楀ぇ浜庣瓑浜?;鏁版嵁閮ㄥ垎:鏁存暟閮ㄥ垎瀛樺偍2(2-1=1),灝忔暟閮ㄥ垎浠庡乏寰鍙?浣嶄竴緇撳悎,23(23-1=22)琛ㄧず22,鍚庤竟榪樺墿涓嬩竴涓?,
                                涓嶈凍2浣嶇殑鏈熬琛ュ厖涓涓?,涔熷氨鏄瓑浜?.2220

1 row selected.

ZWF.YUDONG>select dump(1.2220) from dual;

DUMP(1.2220)
------------------------
Typ=2 Len=4: 193,2,23,21

1 row selected.


絎﹀彿浣嶏細 鐢ㄧ殑鏄?+-)1-99閮戒笉鍙兘鐢ㄥ埌鐨勭紪鐮?6(102)鏉ヨ〃紺猴紝鏈夎祫鏂欒涓轟簡澶勭悊鎺掑簭闂錛堟湭鍔犺冭瘉錛夈傛牴鎹瓾EAD閮ㄥ垎鍙互鍋氬垵姝ュ垽鏂紝鏍規嵁鎴戜滑璇寸殑HEAD閮ㄥ垎鐨勫洓涓寖鍥達紝
濡傛灉2涓暟鍊間笉鍦ㄤ竴涓寖鍥達紝绔嬪嵆鍙互鐪嬪嚭澶у皬錛屽鏋滃湪涓涓寖鍥村叾瀹炰篃鍙互鏍規嵁鍏舵璐?緇濆鍊兼潵榪涜鎺掑簭浜嗭紝姝f暟緇濆鍊煎ぇ鐨勫氨澶э紝璐熸暟鍒欑浉鍙嶏紝涓轟綍榪樿鐢ㄥ埌榪欎釜絎﹀彿浣嶏紵

鏈湴嫻偣綾誨瀷

鍙﹀鍐嶈涓涓嬩袱涓暟鍊肩被鍨嬫湰鍦版誕鐐規暟鎹被鍨嬶紙binary_float涓巄inary_double錛?br />
鏈湴嫻偣鏁版嵁綾誨瀷鏈澶х殑鐗圭偣灝辨槸姣擭UMBER綾誨瀷鏁堢巼鏇撮珮
紜歡榪愮畻/鏁板榪愮畻蹇?5– 10 鍊?br /> 鍗犵敤鏇村皯鐨勫唴瀛?紓佺洏絀洪棿錛?/9 瀛楄妭涓?1 – 22 瀛楄妭錛?br /> BINARY_DOUBLE 鍊艱寖鍥存洿澶э紙e308 涓?e125錛?br /> 鏃犻渶綾誨瀷杞崲錛堜嬌鐢ㄤ笌瀛楄妭欏哄簭鏃犲叧鐨勫瓨鍌ㄦ牸寮忥級

涓嬮潰紼嬪簭鏄嬌鐢ㄦ鎷夌駭鏁拌綆楀渾鍛ㄧ巼∏:
∏ = sqrt ( 6 * ( 1 + 1/2*2 + 1/3*2 + ... ) )

鏂規硶涓錛氫嬌鐢∟UMBER綾誨瀷

create or replace procedure Euler_Pi_Number is

subtype My_Number is number;

zero constant My_Number := 0.0;
one constant My_Number := 1.0;
two constant My_Number := 2.0;
six constant My_Number := 6.0;
toler constant My_Number := 0.00000000001;
root_toler constant My_Number := toler/1000.0;

root My_Number;
prev_root My_Number;
prod_over_six My_Number;
prod My_Number;
pi My_Number;
prev_pi My_Number;
step My_Number;

begin
pi := one;
prev_pi := zero;
prod_over_six := zero;
step := zero;
while pi - prev_pi > toler
loop
prev_pi := pi;
step := step + one;
prod_over_six := prod_over_six + one/(step*step);
prod := six*prod_over_six;
prev_root := prod;
root := prod/two;
while Abs(root - prev_root) > root_toler
loop
prev_root := root;
root := (root + prod/root)/two;
end loop;
pi := root;
end loop;
end Euler_Pi_Number;
/


鏂規硶浜岋細浣跨敤BINARY_DOUBLE綾誨瀷

create or replace procedure Euler_Pi_Binary is

subtype My_Number is binary_double;

zero constant My_Number := 0.0d;
one constant My_Number := 1.0d;
two constant My_Number := 2.0d;
six constant My_Number := 6.0d;
toler constant My_Number := 0.00000000001d;
root_toler constant My_Number := toler/1000.0d;

root My_Number;
prev_root My_Number;
prod_over_six My_Number;
prod My_Number;
pi My_Number;
prev_pi My_Number;
step My_Number;

begin
pi := one;
prev_pi := zero;
prod_over_six := zero;
step := zero;
while pi - prev_pi > toler
loop
prev_pi := pi;
step := step + one;
prod_over_six := prod_over_six + one/(step*step);
prod := six*prod_over_six;
prev_root := prod;
root := prod/two;
while Abs(root - prev_root) > root_toler
loop
prev_root := root;
root := (root + prod/root)/two;
end loop;
pi := root;
end loop;
end Euler_Pi_Binary;
/


SQL> set timing on
SQL> exec Euler_Pi_Number;

PL/SQL 榪囩▼宸叉垚鍔熷畬鎴愩?br />
宸茬敤鏃墮棿: 00: 00: 11.59
SQL> exec Euler_Pi_Binary;

PL/SQL 榪囩▼宸叉垚鍔熷畬鎴愩?br />
宸茬敤鏃墮棿: 00: 00: 02.09


涓婇潰渚嬪瓙涓繎浼?00,000嬈¤凱浠h綆?NUMBER綾誨瀷鑺辮垂11.59縐?BINARY_DOUBLE綾誨瀷鑺辮垂綰?.09縐?鎬ц兘鎻愰珮澶х害5.5鍊?

緇撹錛氬湪鐗堟湰10g涔嬪悗鍐欎竴浜涘亸鏁板瓧縐戝榪愯閲忓法澶х殑瀛樺偍榪囩▼銆佸嚱鏁版椂,瀵逛簬嫻偣鏁板瓧綾誨瀷瑕佷紭鍏堣冭檻浣跨敤鏈湴嫻偣鏁版嵁綾誨瀷

鐩稿叧閾炬帴
http://it.chinawin.net/database/article-4193.html
http://ilinux.javaeye.com/blog/289550
http://yaanzy.itpub.net/post/1263/200971



鍒濅竴涓冩湀 2011-01-24 21:56 鍙戣〃璇勮
]]>
鏁版嵁搴撳茍鍙戦棶棰樺強浜嬪姟闅旂綰у埆http://www.tkk7.com/caojianhua/archive/2010/12/13/340560.html鍒濅竴涓冩湀鍒濅竴涓冩湀Mon, 13 Dec 2010 15:30:00 GMThttp://www.tkk7.com/caojianhua/archive/2010/12/13/340560.htmlhttp://www.tkk7.com/caojianhua/comments/340560.htmlhttp://www.tkk7.com/caojianhua/archive/2010/12/13/340560.html#Feedback0http://www.tkk7.com/caojianhua/comments/commentRss/340560.htmlhttp://www.tkk7.com/caojianhua/services/trackbacks/340560.html
    鑴忚錛屽氨鏄寚褰撲竴涓簨鍔℃鍦ㄨ闂暟鎹紝騫朵笖瀵規暟鎹繘琛屼簡淇敼錛岃岃繖縐嶄慨鏀硅繕娌℃湁鎻愪氦鍒版暟鎹簱涓紝榪欐椂錛屽彟澶栦竴涓簨鍔′篃璁塊棶榪欎釜鏁版嵁錛岀劧鍚庝嬌鐢ㄤ簡榪欎釜鏁版嵁銆傚洜涓鴻繖涓暟鎹槸榪樻病鏈夋彁浜ょ殑鏁版嵁錛岄偅涔堝彟澶栦竴涓簨鍔¤鍒扮殑榪欎釜鏁版嵁鏄剰鏁版嵁錛屼緷鎹剰鏁版嵁鎵鍋氱殑鎿嶄綔鍙兘鏄笉姝g‘鐨勩?br />
    涓嶅彲閲嶅璇伙紝鏄寚鍦ㄤ竴涓簨鍔″唴錛屽嬈¤鍚屼竴鏁版嵁銆傚湪榪欎釜浜嬪姟榪樻病鏈夌粨鏉熸椂錛屽彟澶栦竴涓簨鍔′篃璁塊棶璇ュ悓涓鏁版嵁銆傞偅涔堬紝鍦ㄧ涓涓簨鍔′腑鐨勪袱嬈¤鏁版嵁涔嬮棿錛岀敱浜庣浜屼釜浜嬪姟鐨勪慨鏀癸紝閭d箞絎竴涓簨鍔′袱嬈¤鍒扮殑鐨勬暟鎹彲鑳芥槸涓嶄竴鏍風殑銆傝繖鏍峰氨鍙戠敓浜嗗湪涓涓簨鍔″唴涓ゆ璇誨埌鐨勬暟鎹槸涓嶄竴鏍風殑錛屽洜姝ょО涓烘槸涓嶅彲閲嶅璇匯?br />
    騫昏錛屾槸鎸囧綋浜嬪姟涓嶆槸鐙珛鎵ц鏃跺彂鐢熺殑涓縐嶇幇璞★紝渚嬪絎竴涓簨鍔″涓涓〃涓殑鏁版嵁榪涜浜嗕慨鏀癸紝榪欑淇敼娑夊強鍒拌〃涓殑鍏ㄩ儴鏁版嵁琛屻傚悓鏃訛紝絎簩涓簨鍔′篃淇敼榪欎釜琛ㄤ腑鐨勬暟鎹紝榪欑淇敼鏄悜琛ㄤ腑鎻掑叆涓琛屾柊鏁版嵁銆傞偅涔堬紝浠ュ悗灝變細鍙戠敓鎿嶄綔絎竴涓簨鍔$殑鐢ㄦ埛鍙戠幇琛ㄤ腑榪樻湁娌℃湁淇敼鐨勬暟鎹錛屽氨濂借薄鍙戠敓浜嗗夠瑙変竴鏍楓?br />
    ANSI SQL涓畾涔夌殑4涓殧紱葷駭瀹為檯涓婃槸鐢ㄥ閿佺殑鎿嶄綔鏉ュ畾涔夌殑錛?br />
    Read Uncommitted(鏈彁浜よ鍙栵紝涔熷彨鑴忚): 璇繪暟鎹椂涓嶅姞閿併傚厑璁歌剰璇匯佷笉鍙噸澶嶈銆佸夠瑙夎銆?br />     Read Committed(鎻愪氦璇誨彇): 鍦ㄨ鏁版嵁涔嬪墠鍔犱竴涓閿侊紝璇誨畬涔嬪悗閲婃斁閿併傚厑璁鎬笉鍙噸澶嶈銆佸夠瑙夎銆?br />     Repeatable Read(鍙噸澶嶈鍙?: 鍦ㄨ鏁版嵁涔嬪墠鍔犱竴涓閿侊紝璇誨畬涔嬪悗涓嶉噴鏀鵑攣錛岀洿鍒頒簨鍔ollback鎴栬卌ommit鍚庢墠閲婃斁閿併傚厑璁稿夠瑙夎銆?br />     Serializable(涓茶鍖栬鍙?: 鍦ㄨ鏁版嵁涔嬪墠鍦ㄨ鍙栫殑鏉′歡涓婂姞閿侊紙縐頒負鏉′歡閿侊級錛岃瀹屼箣鍚庝笉閲婃斁閿侊紝鐩村埌浜嬪姟rollback鎴栬卌ommit鍚庢墠閲婃斁閿併備笉鍏佽鑴忚銆佷笉鍙噸澶嶈銆佸夠璇匯?br />
    浠ヤ笅鏄鐓ц〃

   
闅旂綰у埆 鑴忚錛圖irty Read錛? 涓嶅彲閲嶅璇伙紙NonRepeatable Read錛? 騫昏錛圥hantom Read錛?
璇繪湭鎻愪氦錛圧ead uncommitted錛? 鍙兘 鍙兘 鍙兘
璇誨凡鎻愪氦錛圧ead committed錛? 涓嶅彲鑳? 鍙兘 鍙兘
鍙噸澶嶈錛圧epeatable read錛? 涓嶅彲鑳? 涓嶅彲鑳? 鍙兘
鍙覆琛屽寲錛圫erializable 錛? 涓嶅彲鑳? 涓嶅彲鑳? 涓嶅彲鑳?





鍒濅竴涓冩湀 2010-12-13 23:30 鍙戣〃璇勮
]]>
主站蜘蛛池模板: 一级做a爰片久久毛片免费陪| 精品亚洲成在人线AV无码| 男女啪啪免费体验区| 国产男女猛烈无遮档免费视频网站 | 最近免费最新高清中文字幕韩国| 国产亚洲色婷婷久久99精品| 成人av片无码免费天天看| 三上悠亚亚洲一区高清| 99麻豆久久久国产精品免费 | 成人免费ā片在线观看| a级亚洲片精品久久久久久久 | 99热在线免费播放| 亚洲无人区视频大全| 日韩精品福利片午夜免费观着 | 国产偷v国产偷v亚洲高清| 久操免费在线观看| 亚洲国产美女福利直播秀一区二区 | 亚洲高清视频在线播放| 97视频热人人精品免费| 日本系列1页亚洲系列| 国产偷窥女洗浴在线观看亚洲| aaa毛片视频免费观看| 亚洲综合免费视频| 四虎成人免费大片在线| 夜夜爽妓女8888视频免费观看| 国产亚洲成AV人片在线观黄桃| 蜜臀AV免费一区二区三区| 亚洲欧美中文日韩视频| 亚洲成A人片在线观看无码3D| AAA日本高清在线播放免费观看| 亚洲欧洲日产专区| 免费国产怡红院在线观看| 免费人成激情视频在线观看冫 | 亚洲久悠悠色悠在线播放| 亚洲?V无码乱码国产精品| 国产成人AV片无码免费| 亚洲欧美精品午睡沙发| 亚洲精品乱码久久久久久中文字幕| 最近中文字幕2019高清免费| 精品亚洲福利一区二区| 亚洲丁香色婷婷综合欲色啪|