📄 column_8c-source.html
字号:
<a name="l00562"></a>00562 <span class="keywordflow">case</span> SQLT_CHR:<a name="l00563"></a>00563 <span class="keywordflow">case</span> SQLT_STR:<a name="l00564"></a>00564 <span class="keywordflow">case</span> SQLT_VCS:<a name="l00565"></a>00565 <span class="keywordflow">case</span> SQLT_AFC:<a name="l00566"></a>00566 <span class="keywordflow">case</span> SQLT_AVC:<a name="l00567"></a>00567 <span class="keywordflow">case</span> SQLT_VST:<a name="l00568"></a>00568 <span class="keywordflow">case</span> SQLT_LAB:<a name="l00569"></a>00569 <span class="keywordflow">case</span> SQLT_OSL:<a name="l00570"></a>00570 <span class="keywordflow">case</span> SQLT_SLS:<a name="l00571"></a>00571 <span class="keywordflow">default</span>:<a name="l00572"></a>00572 <a name="l00573"></a>00573 col-><a class="code" href="struct_o_c_i___column.html#ad9396e5095db31c838023313a41569e">icode</a> = SQLT_STR;<a name="l00574"></a>00574 col-><a class="code" href="struct_o_c_i___column.html#93bfdf4f9926d4680f93356402177110">type</a> = OCI_CDT_TEXT;<a name="l00575"></a>00575 col-><a class="code" href="struct_o_c_i___column.html#e0216bd7ecc0517de0fa5dc56980bf1e">bufsize</a> = (col-><a class="code" href="struct_o_c_i___column.html#e9713aae44e3fcf85987ffe8732bd72e">size</a> + 1) * <span class="keyword">sizeof</span>(dtext);<a name="l00576"></a>00576 <span class="keywordflow">break</span>;<a name="l00577"></a>00577 }<a name="l00578"></a>00578 <a name="l00579"></a>00579 <span class="keywordflow">return</span> res;<a name="l00580"></a>00580 }<a name="l00581"></a>00581 <a name="l00582"></a>00582 <span class="comment">/* ************************************************************************ *</span><a name="l00583"></a>00583 <span class="comment"> * PUBLIC FUNCTIONS</span><a name="l00584"></a>00584 <span class="comment"> * ************************************************************************ */</span><a name="l00585"></a>00585 <a name="l00586"></a>00586 <span class="comment">/* ------------------------------------------------------------------------ *</span><a name="l00587"></a>00587 <span class="comment"> * OCI_ColumnGetName</span><a name="l00588"></a>00588 <span class="comment"> * ------------------------------------------------------------------------ */</span><a name="l00589"></a>00589 <a name="l00590"></a><a class="code" href="group__g__fetch.html#gd22f87322cdb788a03a0c259ab126a94">00590</a> <span class="keyword">const</span> mtext * OCI_API <a class="code" href="group__g__fetch.html#gd22f87322cdb788a03a0c259ab126a94" title="Return the name of the given column.">OCI_ColumnGetName</a>(<a class="code" href="struct_o_c_i___column.html" title="Oracle SQL Column and Type member representation.">OCI_Column</a> *col)<a name="l00591"></a>00591 {<a name="l00592"></a>00592 OCI_CHECK_PTR(OCI_IPC_COLUMN, col, NULL);<a name="l00593"></a>00593 <a name="l00594"></a>00594 <span class="keywordflow">return</span> col-><a class="code" href="struct_o_c_i___column.html#78b329664d213d666619d5130098f309">name</a>;<a name="l00595"></a>00595 }<a name="l00596"></a>00596 <a name="l00597"></a>00597 <span class="comment">/* ------------------------------------------------------------------------ *</span><a name="l00598"></a>00598 <span class="comment"> * OCI_ColumnGetType</span><a name="l00599"></a>00599 <span class="comment"> * ------------------------------------------------------------------------ */</span><a name="l00600"></a>00600 <a name="l00601"></a><a class="code" href="group__g__fetch.html#gb73b920d3670f6cb4b2454ee13a34d41">00601</a> <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> OCI_API <a class="code" href="group__g__fetch.html#gb73b920d3670f6cb4b2454ee13a34d41" title="Return the type of the given column.">OCI_ColumnGetType</a>(<a class="code" href="struct_o_c_i___column.html" title="Oracle SQL Column and Type member representation.">OCI_Column</a> *col)<a name="l00602"></a>00602 {<a name="l00603"></a>00603 OCI_CHECK_PTR(OCI_IPC_COLUMN, col, OCI_UNKNOWN);<a name="l00604"></a>00604 <a name="l00605"></a>00605 OCI_RESULT(TRUE);<a name="l00606"></a>00606 <a name="l00607"></a>00607 <span class="keywordflow">return</span> col-><a class="code" href="struct_o_c_i___column.html#93bfdf4f9926d4680f93356402177110">type</a>;<a name="l00608"></a>00608 }<a name="l00609"></a>00609 <a name="l00610"></a>00610 <span class="comment">/* ------------------------------------------------------------------------ *</span><a name="l00611"></a>00611 <span class="comment"> * OCI_ColumnGetCharsetForm</span><a name="l00612"></a>00612 <span class="comment"> * ------------------------------------------------------------------------ */</span><a name="l00613"></a>00613 <a name="l00614"></a><a class="code" href="group__g__fetch.html#gd90f806db40e8027f212f0d357baf659">00614</a> <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> OCI_API <a class="code" href="group__g__fetch.html#gd90f806db40e8027f212f0d357baf659" title="Return the charset form of the given column.">OCI_ColumnGetCharsetForm</a>(<a class="code" href="struct_o_c_i___column.html" title="Oracle SQL Column and Type member representation.">OCI_Column</a> *col)<a name="l00615"></a>00615 {<a name="l00616"></a>00616 OCI_CHECK_PTR(OCI_IPC_COLUMN, col, OCI_CSF_NONE);<a name="l00617"></a>00617 <a name="l00618"></a>00618 OCI_RESULT(TRUE);<a name="l00619"></a>00619 <a name="l00620"></a>00620 <span class="keywordflow">if</span> (col-><a class="code" href="struct_o_c_i___column.html#2b00b782a51e4650747f053b6f75a591">csfrm</a> == SQLCS_NCHAR)<a name="l00621"></a>00621 <span class="keywordflow">return</span> OCI_CSF_NATIONAL;<a name="l00622"></a>00622 <span class="keywordflow">else</span> <span class="keywordflow">if</span> (col-><a class="code" href="struct_o_c_i___column.html#2b00b782a51e4650747f053b6f75a591">csfrm</a> == SQLCS_IMPLICIT)<a name="l00623"></a>00623 <span class="keywordflow">return</span> OCI_CSF_CHARSET;<a name="l00624"></a>00624 <span class="keywordflow">else</span><a name="l00625"></a>00625 <span class="keywordflow">return</span> OCI_CSF_NONE;<a name="l00626"></a>00626 }<a name="l00627"></a>00627 <a name="l00628"></a>00628 <span class="comment">/* ------------------------------------------------------------------------ *</span><a name="l00629"></a>00629 <span class="comment"> * OCI_ColumnGetSize</span><a name="l00630"></a>00630 <span class="comment"> * ------------------------------------------------------------------------ */</span><a name="l00631"></a>00631 <a name="l00632"></a><a class="code" href="group__g__fetch.html#g06a8b69d4f3fab5b30de05321468e8cc">00632</a> <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> OCI_API <a class="code" href="group__g__fetch.html#g06a8b69d4f3fab5b30de05321468e8cc" title="Return the size of the column.">OCI_ColumnGetSize</a>(<a class="code" href="struct_o_c_i___column.html" title="Oracle SQL Column and Type member representation.">OCI_Column</a> *col)<a name="l00633"></a>00633 {<a name="l00634"></a>00634 OCI_CHECK_PTR(OCI_IPC_COLUMN, col, 0);<a name="l00635"></a>00635 <a name="l00636"></a>00636 OCI_RESULT(TRUE);<a name="l00637"></a>00637 <a name="l00638"></a>00638 <span class="comment">/* Oracle 9i introduced CHAR attribute on string columns to indicate the </span><a name="l00639"></a>00639 <span class="comment"> size of the column is not in bytes (default) but in chars</span><a name="l00640"></a>00640 <span class="comment"> OCI_ColumnDescribe() already managed the Oracle compatibly</span><a name="l00641"></a>00641 <span class="comment"> version, so if col->charsize is zero it means :</span><a name="l00642"></a>00642 <span class="comment"> - the column is not a string column </span><a name="l00643"></a>00643 <span class="comment"> - the size is not in char</span><a name="l00644"></a>00644 <span class="comment"> - client does not support the OCI_ATTR_CHAR_SIZE attribute */</span><a name="l00645"></a>00645 <a name="l00646"></a>00646 <span class="keywordflow">if</span> (col-><a class="code" href="struct_o_c_i___column.html#826cc6a4d1aca903a8ff253458f8be16">charused</a> == TRUE && col-><a class="code" href="struct_o_c_i___column.html#6c9a6a724ee1b211e2088c21b494d0c4">charsize</a> > 0)<a name="l00647"></a>00647 <span class="keywordflow">return</span> col-><a class="code" href="struct_o_c_i___column.html#6c9a6a724ee1b211e2088c21b494d0c4">charsize</a>;<a name="l00648"></a>00648 <span class="keywordflow">else</span><a name="l00649"></a>00649 <span class="keywordflow">return</span> col-><a class="code" href="struct_o_c_i___column.html#e9713aae44e3fcf85987ffe8732bd72e">size</a>;<a name="l00650"></a>00650 }<a name="l00651"></a>00651 <a name="l00652"></a>00652 <span class="comment">/* ------------------------------------------------------------------------ *</span><a name="l00653"></a>00653 <span class="comment"> * OCI_ColumnGetScale</span><a name="l00654"></a>00654 <span class="comment"> * ------------------------------------------------------------------------ */</span><a name="l00655"></a>00655 <a name="l00656"></a><a class="code" href="group__g__fetch.html#gf2efa02274865e8aad691dacef6ffa26">00656</a> <span class="keywordtype">int</span> OCI_API <a class="code" href="group__g__fetch.html#gf2efa02274865e8aad691dacef6ffa26" title="Return the scale of the column for numeric columns.">OCI_ColumnGetScale</a>(<a class="code" href="struct_o_c_i___column.html" title="Oracle SQL Column and Type member representation.">OCI_Column</a> *col)<a name="l00657"></a>00657 {<a name="l00658"></a>00658 OCI_CHECK_PTR(OCI_IPC_COLUMN, col, 0);<a name="l00659"></a>00659 <a name="l00660"></a>00660 OCI_RESULT(TRUE);<a name="l00661"></a>00661 <a name="l00662"></a>00662 <span class="keywordflow">return</span> (<span class="keywordtype">int</span>) col-><a class="code" href="struct_o_c_i___column.html#414942032092efb47ddf2f905eece02c">scale</a>;<a name="l00663"></a>00663 }<a name="l00664"></a>00664 <a name="l00665"></a>00665 <span class="comment">/* ------------------------------------------------------------------------ *</span><a name="l00666"></a>00666 <span class="comment"> * OCI_ColumnGetPrecision</span><a name="l00667"></a>00667 <span class="comment"> * ------------------------------------------------------------------------ */</span><a name="l00668"></a>00668 <a name="l00669"></a><a class="code" href="group__g__fetch.html#gab594ab69c5ca3be0b533eba720f6012">00669</a> <span class="keywordtype">int</span> OCI_API <a class="code" href="group__g__fetch.html#gab594ab69c5ca3be0b533eba720f6012" title="Return the precision of the column for numeric columns.">OCI_ColumnGetPrecision</a>(<a class="code" href="struct_o_c_i___column.html" title="Oracle SQL Column and Type member representation.">OCI_Column</a> *col)<a name="l00670"></a>00670 {<a name="l00671"></a>00671 OCI_CHECK_PTR(OCI_IPC_COLUMN, col, 0);<a name="l00672"></a>00672 <a name="l00673"></a>00673 OCI_RESULT(TRUE);<a name="l00674"></a>00674 <a name="l00675"></a>00675 <span class="keywordflow">if</span> (col-><a class="code" href="struct_o_c_i___column.html#93bfdf4f9926d4680f93356402177110">type</a> == OCI_CDT_NUMERIC)<a name="l00676"></a>00676 <span class="keywordflow">return</span> (<span class="keywordtype">int</span>) col-><a class="code" href="struct_o_c_i___column.html#c4994d12d5658ac0749a89eca1c1b1c3">prec</a>;<a name="l00677"></a>00677 <span class="keywordflow">else</span><a name="l00678"></a>00678 <span class="keywordflow">return</span> 0;<a name="l00679"></a>00679 }<a name="l00680"></a>00680 <a name="l00681"></a>00681 <span class="comment">/* ------------------------------------------------------------------------ *</span><a name="l00682"></a>00682 <span class="comment"> * OCI_ColumnGetFractionalPrecision</span><a name="l00683"></a>00683 <span class="comment"> * ------------------------------------------------------------------------ */</span><a name="l00684"></a>00684 <a name="l00685"></a><a class="code" href="group__g__fetch.html#g2b6cb330cfc05cb6510917563698de62">00685</a> <span class="keywordtype">int</span> OCI_API <a class="code" href="group__g__fetch.html#g2b6cb330cfc05cb6510917563698de62" title="Return the fractional precision of the column for timestamp and interval columns...">OCI_ColumnGetFractionalPrecision</a>(<a class="code" href="struct_o_c_i___column.html" title="Oracle SQL Column and Type member representation.">OCI_Column</a> *col)<a name="l00686"></a>00686 {<a name="l00687"></a>00687 OCI_CHECK_PTR(OCI_IPC_COLUMN, col, 0);<a name="l00688"></a>00688 <a name="l00689"></a>00689 OCI_RESULT(TRUE);<a name="l00690"></a>00690 <a name="l00691"></a>00691 <span class="keywordflow">if</span> (col-><a class="code" href="struct_o_c_i___column.html#93bfdf4f9926d4680f93356402177110">type</a> == OCI_CDT_TIMESTAMP)<a name="l00692"></a>00692 <span class="keywordflow">return</span> (<span class="keywordtype">int</span>) col-><a class="code" href="struct_o_c_i___column.html#c4994d12d5658ac0749a89eca1c1b1c3">prec</a>;<a name="l00693"></a>00693 <span class="keywordflow">else</span> <span class="keywordflow">if</span> (col-><a class="code" href="struct_o_c_i___column.html#93bfdf4f9926d4680f93356402177110">type</a> == OCI_CDT_INTERVAL)<a name="l00694"></a>00694 <span class="keywordflow">return</span> (<span class="keywordtype">int</span>) col-><a class="code" href="struct_o_c_i___column.html#c132e0ba6df65cb153678016eb117bca">prec2</a>;<a name="l00695"></a>00695 <span class="keywordflow">else</span><a name="l00696"></a>00696 <span class="keywordflow">return</span> 0;<a name="l00697"></a>00697 }<a name="l00698"></a>00698 <a name="l00699"></a>00699 <span class="comment">/* ------------------------------------------------------------------------ *</span><a name="l00700"></a>00700 <span class="comment"> * OCI_ColumnGetLeadingPrecision</span><a name="l00701"></a>00701 <span class="comment"> * ------------------------------------------------------------------------ */</span><a name="l00702"></a>00702 <a name="l00703"></a><a class="code" href="group__g__fetch.html#gefdd1573da01bc731ccd8086f702f06c">00703</a> <span class="keywordtype">int</span> OCI_API <a class="code" href="group__g__fetch.html#gefdd1573da01bc731ccd8086f702f06c" title="Return the leading precision of the column for interval columns.">OCI_ColumnGetLeadingPrecision</a>(<a class="code" href="struct_o_c_i___column.html" title="Oracle SQL Column and Type member representation.">OCI_Column</a> *col)<a name="l00704"></a>00704 {<a name="l
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -