JAVA

          人生若只如初見,何事秋風(fēng)悲畫扇。

            BlogJava :: 首頁 :: 新隨筆 :: 聯(lián)系 :: 聚合  :: 管理 ::
            50 隨筆 :: 25 文章 :: 157 評(píng)論 :: 0 Trackbacks

          ORACLE沒有自動(dòng)增長(zhǎng)的數(shù)據(jù)類型,需要建立一個(gè)自動(dòng)增長(zhǎng)的序列號(hào),插入記錄時(shí)要把序列號(hào)的下一個(gè)
          值賦于此字段。

          ??? CREATE SEQUENCE 序列號(hào)的名稱 (最好是表名+序列號(hào)標(biāo)記) INCREMENT BY 1? START? WITH? 1
          MAXVALUE? 99999? CYCLE? NOCACHE;
          ??? 其中最大的值按字段的長(zhǎng)度來定, 如果定義的自動(dòng)增長(zhǎng)的序列號(hào) NUMBER(6) , 最大值為999999
          ??? INSERT 語句插入這個(gè)字段值為: 序列號(hào)的名稱.NEXTVAL?
          ???
          ?????如,可以用如下的操作來對(duì)其進(jìn)行操作:
          ?????

          String?sqlSelectCID? = ? " Select?CourseList_SEQ.nextval?as?Course_ID?from?dual " ;
          PreparedStatement?stmtSelectCID;
          stmtSelectCID?
          = ?conn.prepareStatement(sqlSelectCID)
          synchronized (stmtSelectCID)
          ????????????????????
          {
          ????????????????????????selectCourseIDRS?
          = ?stmtSelectCID.executeQuery();
          ????????????????????}

          ????????????????????
          ????????????????????
          if ( ! selectCourseIDRS.next())
          ????????????????????
          {
          ????????????????????????
          // Update?DB?failed
          ????????????????????????stmtSelectCID.close();
          ????????????????????????conn.close();
          ????????????????????????
          return ;
          ????????????????????}

          ????????????????????setCourseID(selectCourseIDRS.getInt(
          " Course_ID " ));



          ================================================================================

          用:SELECT SEQUENCE_NAME FROM USER_SEQUENCES;可以查看序列!

          ================================================================================


          在PL/SQL Developer中(OR PL/SQL)的描述串:
          (DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=localhost)(PORT=1521))(CONNECT_DATA=(SERVICE_NAME=orcl)))

          ================================================================================
          在Oracle中顯示日期,諸如:
          select to_char(last_day(current_date),'yyyy-mm')||'-'||'01' "本月初日期", to_char(last_day(current_date),'yyyy-mm-dd') "本月末日期" from dual;

          顯示結(jié)果:

          本月初日期 本月末日期
          ---------- ----------
          2006-01-01 2006-01-31

          ================================================================================

          單行字符串函數(shù)用于操作字符串?dāng)?shù)據(jù),他們大多數(shù)有一個(gè)或多個(gè)參數(shù),其中絕大多數(shù)返回字符串

            ascii()
            c1是一字符串,返回c1第一個(gè)字母的ascii碼,他的逆函數(shù)是chr()
          select ascii(''a'') big_a,ascii(''z'') big_z from empbig_a big_z65 122

            chr(<i>)[nchar_cs]
            i是一個(gè)數(shù)字,函數(shù)返回十進(jìn)制表示的字符
          select chr(65),chr(122),chr(223) from empchr65 chr122 chr223a z b

            concat(,)
            c1,c2均為字符串,函數(shù)將c2連接到c1的后面,如果c1為null,將返回c2.如果c2為null,則返回c1,如果c1、c2都為null,則返回null。他和操作符||返回的結(jié)果相同
          select concat(''slobo '',''svoboda'') username from dualusernameslobo syoboda

            initcap()
            c1為一字符串。函數(shù)將每個(gè)單詞的第一個(gè)字母大寫其它字母小寫返回。單詞由空格,控制字符,標(biāo)點(diǎn)符號(hào)限制。
          select initcap(''veni,vedi,vici'') ceasar from dualceasarveni,vedi,vici

            instr(,[,<i>[,]])
            c1,c2均為字符串,i,j為整數(shù)。函數(shù)返回c2在c1中第j次出現(xiàn)的位置,搜索從c1的第i個(gè)字符開始。當(dāng)沒有發(fā)現(xiàn)需要的字符時(shí)返回0,如果i為負(fù)數(shù),那么搜索將從右到左進(jìn)行,但是位置的計(jì)算還是從左到右,i和j的缺省值為1.
          select instr(''mississippi'',''i'',3,3) from dualinstr(''mississippi'',''i'',3,3)11select instr(''mississippi'',''i'',-2,3) from dualinstr(''mississippi'',''i'',3,3)2

            instrb(,[,i[,j])
            與instr()函數(shù)一樣,只是他返回的是字節(jié),對(duì)于單字節(jié)instrb()等于instr()

            length()
            c1為字符串,返回c1的長(zhǎng)度,如果c1為null,那么將返回null值。
          select length(''ipso facto'') ergo from dualergo10

            lengthb()
            與length()一樣,返回字節(jié)。

            lower()
            返回c的小寫字符,經(jīng)常出現(xiàn)在where子串中
          select lower(colorname) from itemdetail where lower(colorname) like ''%white%''colornamewinterwhite

            lpad(,<i>[,])
            c1,c2均為字符串,i為整數(shù)。在c1的左側(cè)用c2字符串補(bǔ)足致長(zhǎng)度i,可多次重復(fù),如果i小于c1的長(zhǎng)度,那么只返回i那么長(zhǎng)的c1字符,其他的將被截去。c2的缺省值為單空格,參見rpad。
          select lpad(answer,7,'''') padded,answer unpadded from question;padded unpadded yes yesno nomaybe maybe

            ltrim(,)
            把c1中最左邊的字符去掉,使其第一個(gè)字符不在c2中,如果沒有c2,那么c1就不會(huì)改變。
          select ltrim(''mississippi'',''mis'') from dualltrppi

            rpad(,<i>[,])
            在c1的右側(cè)用c2字符串補(bǔ)足致長(zhǎng)度i,可多次重復(fù),如果i小于c1的長(zhǎng)度,那么只返回i那么長(zhǎng)的c1字符,其他的將被截去。c2的缺省值為單空格,其他與lpad相似

            rtrim(,)
            把c1中最右邊的字符去掉,使其第后一個(gè)字符不在c2中,如果沒有c2,那么c1就不會(huì)改變。

            replace(,[,])
            c1,c2,c3都是字符串,函數(shù)用c3代替出現(xiàn)在c1中的c2后返回。
          select replace(''uptown'',''up'',''down'') from dualreplacedowntown

            stbstr(,<i>[,])
            c1為一字符串,i,j為整數(shù),從c1的第i位開始返回長(zhǎng)度為j的子字符串,如果j為空,則直到串的尾部。
          select substr(''message'',1,4) from dualsubsmess

            substrb(,<i>[,])
            與substr大致相同,只是i,j是以字節(jié)計(jì)算。

            soundex()
            返回與c1發(fā)音相似的詞
          select soundex(''dawes'') dawes soundex(''daws'') daws, soundex(''dawson'') from dualdawes daws dawsond200 d200 d250

            translate(,,)
            將c1中與c2相同的字符以c3代替
          select translate(''fumble'',''uf'',''ar'') test from dualtextramble

            trim([[]] from c3)
            將c3串中的第一個(gè),最后一個(gè),或者都刪除。
          select trim('' space padded '') trim from dual trimspace padded

            upper()
            返回c1的大寫,常出現(xiàn)where子串中select name from dual where upper(name) like ''ki%''nameking

          posted on 2006-01-12 00:28 Jkallen 閱讀(648) 評(píng)論(0)  編輯  收藏 所屬分類: DB學(xué)習(xí)

          只有注冊(cè)用戶登錄后才能發(fā)表評(píng)論。


          網(wǎng)站導(dǎo)航:
          博客園   IT新聞   Chat2DB   C++博客   博問  
           
          主站蜘蛛池模板: 巴彦淖尔市| 上犹县| 西充县| 道孚县| 宿州市| 南岸区| 阜新| 辽宁省| 聂拉木县| 区。| 望谟县| 闽侯县| 永安市| 贵南县| 隆回县| 鄂伦春自治旗| 木兰县| 白银市| 湘乡市| 太原市| 唐河县| 柳林县| 陆丰市| 黔东| 阳曲县| 潢川县| 天柱县| 葵青区| 彰化县| 武宁县| 东莞市| 新密市| 巴南区| 越西县| 宣恩县| 徐闻县| 南昌县| 姜堰市| 忻州市| 古蔺县| 台州市|