• <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
            BLUESKY
            一步一個腳印向前走
            在做了前面的插入數據的實驗以后,感覺更新也應該差不多的,所以就動手做執行存儲過程的例子了,下面介紹一下:
            首先是存儲過程的代碼:
            create or replace procedure QUERYSTRUCT(TableName in nvarchar2,Res out nvarchar2) is
              cname all_tab_columns.COLUMN_NAME
            %type;
              dtype all_tab_columns.DATA_TYPE
            %type;
              clen  all_tab_columns.CHAR_LENGTH
            %type;
              dpri  all_tab_columns.DATA_PRECISION
            %type;  
              
            temp  nvarchar2(10);
              
            cursor c(tname nvarchar2) is
                
            select column_name,data_type,char_length,data_precision
                
            from all_tab_columns
               
            where owner='LIUGANG' 
                 
            and table_name = upper(tname);
            begin
              
            open c(TableName);
              loop
                  
            fetch c into cname,dtype,clen,dpri;
                  
            exit when c%notfound;
                  
            if dtype != 'NUMBER' then
                     
            temp:=TO_CHAR(clen);
                  
            else 
                     
            temp:=TO_CHAR(dpri);
                  
            end if;
                  Res:
            = Res || rpad(cname,7,' '|| dtype || '(' || temp || ')'|| CHR(10);
              
            end loop;
              
            close c;
            end QUERYSTRUCT;

            這個存儲過程是實現查詢表的結構的功能的

            下面是OCI的代碼:

                sprintf( szSqlStr,"%s""begin querystruct(:tname,:res); end;");
              
                OCIStmtPrepare(m_stmthp, m_errhp, (text
            *)szSqlStr, (ub4)strlen(szSqlStr),(ub4) OCI_NTV_SYNTAX, (ub4)OCI_DEFAULT);
              
                OCIBindByPos(m_stmthp, 
            &bndp, m_errhp, 1, (dvoid *)tname, (sb4)sizeof(tname), SQLT_STR, NULL, NULL, NULL, 0, NULL, (ub4)OCI_DEFAULT);
                OCIBindByPos(m_stmthp, 
            &bndp, m_errhp, 2, (dvoid *)res, (sb4)sizeof(res), SQLT_STR, NULL, NULL, NULL, 0, NULL, (ub4)OCI_DEFAULT);
                
                OCIStmtExecute( m_svchp, m_stmthp, m_errhp, (ub4)
            1, (ub4) 0,(OCISnapshot *) NULL,(OCISnapshot *) NULL, (ub4)OCI_DEFAULT); 
                
                
                cout 
            << res << endl;

            下面是運行的結果:



            posted on 2007-05-28 20:44 LG 閱讀(3991) 評論(0)  編輯 收藏 引用 所屬分類: CPlusPlus

            <2008年1月>
            303112345
            6789101112
            13141516171819
            20212223242526
            272829303112
            3456789

            常用鏈接

            相冊

            最新評論

            伊人久久大香线蕉综合Av| 国内精品伊人久久久久网站| 99久久无色码中文字幕人妻| 亚洲av伊人久久综合密臀性色| 久久精品a亚洲国产v高清不卡| 91精品观看91久久久久久| 亚洲国产成人精品无码久久久久久综合 | 国产精品一区二区久久不卡| 9999国产精品欧美久久久久久| 亚洲欧洲精品成人久久奇米网| 久久99精品久久久久子伦| 99久久精品免费国产大片| 日韩久久久久久中文人妻| 久久久久亚洲精品男人的天堂| 久久久亚洲欧洲日产国码二区| 欧美亚洲国产精品久久高清| 精品久久久久久无码免费| 国产成人精品免费久久久久| 亚洲欧美一级久久精品| 久久久精品视频免费观看| 狠狠色丁香婷婷综合久久来 | 精品999久久久久久中文字幕| 一日本道伊人久久综合影| 国产精品成人99久久久久| 精品国产一区二区三区久久| 久久精品人人做人人爽97 | 粉嫩小泬无遮挡久久久久久| 亚洲中文字幕久久精品无码喷水| 久久综合成人网| 99热精品久久只有精品| 欧美亚洲另类久久综合| 久久中文娱乐网| 国产精品久久久久久久久免费| 99久久超碰中文字幕伊人 | 午夜精品久久久久久| 国内精品久久久久久久coent | 韩国三级中文字幕hd久久精品 | 久久精品成人一区二区三区| 久久久久亚洲AV成人网人人网站| 久久久久国产精品三级网| 少妇被又大又粗又爽毛片久久黑人 |