<ruby id="bdb3f"></ruby>

    <p id="bdb3f"><cite id="bdb3f"></cite></p>

      <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
        <p id="bdb3f"><cite id="bdb3f"></cite></p>

          <pre id="bdb3f"></pre>
          <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

          <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
          <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

          <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                <ruby id="bdb3f"></ruby>

                企業??AI智能體構建引擎,智能編排和調試,一鍵部署,支持知識庫和私有化部署方案 廣告
                [TOC] ### 變量 ***** 變量名 + 變量類型。聲明變量: ``` countNum number(10); --別忘了寫上具體的長度,并且以分號結束 maxId number(10); --別忘了寫上具體的長度,并且以分號結束 ``` 定義`type`的寫法為`type type_name is record(col_name col_type);`這樣,括號里可以寫多個,中間用`,`分割,但最后一個不能有`,`,具體如下 ``` set serveroutput on; DECLARE TYPE new_type IS RECORD --以TYPE type_name IS RECORD開始 ( v_ly_nl LY_DS.LY_NL%TYPE, v_ly_mc varchar(100) --最后不要加, ); --最后以 ;結束 v_obj new_type; --將新對象定義為剛才聲明的類型 BEGIN --into賦值給v_obj,會按照定義的type順序賦值 select ly_nl,ly_mc into v_obj from ly_ds where id='2'; dbms_output.put_line('第一個變量:'||v_obj.v_ly_nl); dbms_output.put_line('第二個變量:'||v_obj.v_ly_mc); END; ``` 通過`%ROWTYPE`的聲明寫法 `%ROWTYPE`該類型是提取行記錄時常用的存儲數據的方式。這種聲明方式,可以直接引用表中的行作為變量類型,它同`%TYPE`在優點上類似,避免因表中字段的數據類型改變,而導致`PL/SQL`塊出錯的問題。 ??下邊是`%ROWTYPE`的用法例子,挺簡單的: ``` set serveroutput on; DECLARE v_obj ly_ds%rowtype; --ROWTYPE不區分大小寫 BEGIN --into賦值給v_obj,會按照定義的type順序賦值 select * into v_obj from ly_ds where id='2'; dbms_output.put_line('第一個變量:'||v_obj.ly_nl); dbms_output.put_line('第二個變量:'||v_obj.ly_mc); END; ``` >注意一個地方,**就是上邊的`into`前邊,只能為`*`,如果要寫為具體的列,那就要寫全**。 ### 流程控制 ***** if ``` if ... then elsif ... then else end if; ``` case ``` declare i number; BEGIN select count(*) into i from DVD_DVD; case i when 0 then dbms_output.put_line(0); when 1 then dbms_output.put_line(1); when 2 then dbms_output.put_line(2); when 3 then dbms_output.put_line(3); when 4 then dbms_output.put_line(4); when 5 then dbms_output.put_line(5); else dbms_output.put_line('else'); end case; end; ``` while ``` ``` ### 循環 無條件循環 LOOP ``` declare i number := 1; j number := 0; begin loop /* 另一種寫法 if i >= 11 then exit; end if; */ exit when i>=5; j := j + i; i := i + 1; end loop; dbms_output.put_line(j); end; ``` while循環 ``` declare i number := 1; j number := 1; begin while i <= 100 loop if mod(i, 2) = 0 then j := j * i; end if; i := i + 1; end loop; dbms_output.put_line(j); dbms_output.put_line(length(to_char(j))); end; ``` for 循環 ``` declare i number := 1; j number := 1; begin for i in 1..100 loop if mod(i, 2) = 0 then j := j * i; end if; end loop; dbms_output.put_line(j); dbms_output.put_line(length(to_char(j))); end; ``` ### 日期轉化 ``` declare c_d varchar2(30); d_d date; c_d := '2017-1-1 00:00:00'; s,'yyyy-mm-dd hh24:mi:ss') c_d = to_char(d_d,'yyyy-mm-dd hh24:mi:ss') ```
                  <ruby id="bdb3f"></ruby>

                  <p id="bdb3f"><cite id="bdb3f"></cite></p>

                    <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
                      <p id="bdb3f"><cite id="bdb3f"></cite></p>

                        <pre id="bdb3f"></pre>
                        <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

                        <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
                        <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

                        <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                              <ruby id="bdb3f"></ruby>

                              哎呀哎呀视频在线观看