• <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

            常用鏈接

            相冊

            最新評論

            亚洲国产成人久久精品影视| 老司机国内精品久久久久| 亚洲国产精品久久| 波多野结衣中文字幕久久 | 潮喷大喷水系列无码久久精品| 亚洲精品国产第一综合99久久| 亚洲午夜福利精品久久| 久久亚洲精品无码VA大香大香| 亚洲级αV无码毛片久久精品| 精品久久久久久国产| 欧美精品久久久久久久自慰| 97精品国产91久久久久久| 青青青伊人色综合久久| 久久成人永久免费播放| 久久婷婷五月综合97色直播| 久久久无码精品亚洲日韩按摩| 国产激情久久久久影院老熟女免费| 亚洲а∨天堂久久精品9966| 久久精品国产亚洲AV麻豆网站| 久久九九有精品国产23百花影院| 久久综合日本熟妇| 国内精品久久九九国产精品| 久久亚洲国产精品五月天婷| 久久久婷婷五月亚洲97号色| 久久综合伊人77777麻豆| 国产精品99精品久久免费| 亚洲精品第一综合99久久| 精品久久久久久无码中文字幕 | 很黄很污的网站久久mimi色| 东方aⅴ免费观看久久av| 国产99久久九九精品无码| 久久婷婷五月综合97色| 欧美久久久久久精选9999| 久久成人影院精品777| 亚洲国产一成人久久精品| 久久亚洲电影| 亚洲Av无码国产情品久久| 国产 亚洲 欧美 另类 久久 | 久久国产精品国语对白| 久久精品国产一区二区三区日韩| 亚洲国产另类久久久精品|