⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 天极yesky - 全球中文it第一门户 - 软件 - vc++程序员如何阅读ado文档.htm

📁 VC文件的读写操作(很多)
💻 HTM
📖 第 1 页 / 共 3 页
字号:
              <TBODY>
              <TR>
                <TD vAlign=bottom align=right width=100>
                  <SCRIPT language=JavaScript>function check(){ if(sform.iftitle.value==1)  {  sform.title.value=sform.query.value;  }else  {  sform.content.value=sform.query.value;  }}</SCRIPT>
                  <INPUT type=hidden value=wst name=tn></INPUT><INPUT 
                  type=hidden value=1 name=relative></INPUT><INPUT type=hidden 
                  value=1 name=smart_abstract></INPUT><INPUT type=hidden 
                  value="Last-Modified DESC" name=sort></INPUT><INPUT 
                  type=hidden name=title></INPUT><INPUT type=hidden 
                  name=content></INPUT><INPUT type=hidden value=10 
                  name=rn></INPUT><INPUT type=hidden value=1 
                  name=thesaurus></INPUT><INPUT type=hidden 
                  name=ch_id></INPUT><INPUT maxLength=120 size=12 
                  name=query></INPUT><SELECT name=iftitle><OPTION value=0 
                    selected checked="yes">全文检索</OPTION><OPTION 
                    value=1>标题检索</OPTION></SELECT></TD>
                <TD width=49><INPUT type=image alt=开始检索 
                  src="天极Yesky - 全球中文IT第一门户 - 软件 - VC++程序员如何阅读ADO文档.files/03-04.gif" 
                  align=bottom border=0 
            name=image></INPUT></TD></TR></FORM></TBODY></TABLE></TD>
          <TD width=1 bgColor=#698096></TD></TR></TBODY></TABLE>
      <TABLE cellSpacing=0 cellPadding=0 width=151 border=0>
        <TBODY>
        <TR>
          <TD bgColor=#698096 height=1></TD></TR></TBODY></TABLE><IMG height=3 
      src="天极Yesky - 全球中文IT第一门户 - 软件 - VC++程序员如何阅读ADO文档.files/03-13.gif" width=3 
      align=top></IMG></TD>
    <TD width=10 bgColor=#f7f7f7></TD>
    <TD vAlign=top width=464 bgColor=#f7f7f7>您的位置是: <A 
      href="http://www.yesky.com/SoftChannel/72339069014638592/index.shtml">软件</A> 
      &gt; <A 
      href="http://www.yesky.com/SoftChannel/72342367549521920/index.shtml">开发者网络</A> 
      &gt; <A 
      href="http://www.yesky.com/SoftChannel/72342371844489216/index.shtml">开发工具</A> 
      &gt; <A 
      href="http://www.yesky.com/SoftChannel/72342371928375296/index.shtml">开发专栏</A> 
      &gt; <A 
      href="http://www.yesky.com/SoftChannel/72342371928702976/index.shtml">VC专栏</A> 
      &gt; 正文 <IMG height=10 
      src="天极Yesky - 全球中文IT第一门户 - 软件 - VC++程序员如何阅读ADO文档.files/03-13.gif" 
      width=10></IMG><A href="http://www.cseek.com/">查cseek报价</A><BR><BR><FONT 
      class=f22><B>VC++程序员如何阅读ADO文档</B></FONT><BR>2003-10-21<FONT 
      color=#f7f7f7>■</FONT>CANDY<FONT color=#f7f7f7>■</FONT>论坛</TD>
    <TD vAlign=bottom width=130 bgColor=#f7f7f7>
      <TABLE cellSpacing=0 cellPadding=0 width=130 border=0>
        <TBODY>
        <TR>
          <TD align=right width=96><A href="javascript:sendemail()"><FONT 
            color=#ff5d00>我对此感兴趣</FONT></A></TD>
          <TD width=34><IMG height=22 
            src="天极Yesky - 全球中文IT第一门户 - 软件 - VC++程序员如何阅读ADO文档.files/03-17.gif" 
            width=22></IMG></TD></TR>
        <TR>
          <TD align=right width=96><A 
            href="http://211.167.73.173/mail/index.htm"><FONT 
            color=#8c8a8a>订阅电子杂志</FONT></A></TD>
          <TD width=34><IMG height=22 
            src="天极Yesky - 全球中文IT第一门户 - 软件 - VC++程序员如何阅读ADO文档.files/03-18.gif" 
            width=19></IMG></TD></TR>
        <TR>
          <TD align=right width=96>
            <SCRIPT language=JavaScript>function bbs(){ OpenWindow = window.open('http://bbs.yesky.com/yeskybbs.asp?body=VC++程序员如何阅读ADO文档&bbsid=9&url=http://www.yesky.com/SoftChannel/72342371928702976/20031021/1737617.shtml&aid=1737617','bbs','')}</SCRIPT>
            <A href="javascript:bbs()"><FONT color=#8c8a8a>发表评论</FONT></A></TD>
          <TD width=34><IMG height=22 
            src="天极Yesky - 全球中文IT第一门户 - 软件 - VC++程序员如何阅读ADO文档.files/03-19.gif" 
            width=21></IMG></TD></TR></TBODY></TABLE></TD></TR></TBODY></TABLE>
<TABLE cellSpacing=0 cellPadding=0 width=775 bgColor=#ffffff border=0>
  <TBODY>
  <TR>
    <TD width=8 bgColor=#7b91a9></TD>
    <TD width=1 bgColor=#000000></TD>
    <TD vAlign=top align=middle width=163>
      <TABLE cellSpacing=0 cellPadding=0 width=163 
      background="天极Yesky - 全球中文IT第一门户 - 软件 - VC++程序员如何阅读ADO文档.files/03-20.gif" 
      border=0>
        <TBODY>
        <TR>
          <TD width=20></TD>
          <TD width=143><FONT 
      color=#ffffff>advertisement</FONT></TD></TR></TBODY></TABLE><IFRAME 
      src="天极Yesky - 全球中文IT第一门户 - 软件 - VC++程序员如何阅读ADO文档.files/y-software-skyscraper.htm" 
      frameBorder=0 width=160 scrolling=no height=500></IFRAME>
      <TABLE cellSpacing=0 cellPadding=0 width=163 
      background="天极Yesky - 全球中文IT第一门户 - 软件 - VC++程序员如何阅读ADO文档.files/03-20.gif" 
      border=0>
        <TBODY>
        <TR>
          <TD width=20></TD>
          <TD width=143 height=28><FONT 
      color=#ffffff>热点推荐</FONT></TD></TR></TBODY></TABLE>
      <TABLE cellSpacing=0 cellPadding=0 width=155 border=0>
        <TBODY>
        <TR>
          <TD><A 
            href="http://www.yesky.com/SoftChannel/72347899534508032/20031019/1737162.shtml" 
            target=_blank>全能网管之网吧常用Windows下工具</A><BR><A 
            href="http://www.yesky.com/SoftChannel/72347882287529984/20031018/1737119.shtml" 
            target=_blank>ACDSee6.0试用手记</A><BR><A 
            href="http://www.yesky.com/SoftChannel/72348981799157760/20031016/1736594.shtml" 
            target=_blank>深入了解安全技术</A><BR><A 
            href="http://www.yesky.com/SoftChannel/72348990389092352/20031015/1736179.shtml" 
            target=_blank>Dreamweaver MX 2004新功能试用</A><BR><A 
            href="http://www.yesky.com/SoftChannel/72342371928637440/20031014/1735874.shtml" 
            target=_blank>Visual Basic通用报表设计小结</A><BR><A 
            href="http://www.yesky.com/SoftChannel/72348986094125056/20030924/1731488.shtml" 
            target=_blank>设计教程节日大礼包</A><BR></TD></TR></TBODY></TABLE></TD>
    <TD width=13 bgColor=#f7f7f7></TD>
    <TD vAlign=top width=580 bgColor=#f7f7f7>
      <TABLE height=1 cellSpacing=0 cellPadding=0 width=580 
      background="天极Yesky - 全球中文IT第一门户 - 软件 - VC++程序员如何阅读ADO文档.files/03-06.gif" 
      border=0>
        <TBODY>
        <TR>
          <TD></TD></TR></TBODY></TABLE>
      <P align=right><FONT color=red><A 
      href="http://www.yesky.com/SoftChannel/72342371928702976/20031021/1737617_5.shtml">上一页</A>&nbsp;&nbsp;<A 
      href="http://www.yesky.com/SoftChannel/72342371928702976/20031021/1737617.shtml">1</A> 
      <A 
      href="http://www.yesky.com/SoftChannel/72342371928702976/20031021/1737617_1.shtml">2</A> 
      <A 
      href="http://www.yesky.com/SoftChannel/72342371928702976/20031021/1737617_2.shtml">3</A> 
      <A 
      href="http://www.yesky.com/SoftChannel/72342371928702976/20031021/1737617_3.shtml">4</A> 
      <A 
      href="http://www.yesky.com/SoftChannel/72342371928702976/20031021/1737617_4.shtml">5</A> 
      <A 
      href="http://www.yesky.com/SoftChannel/72342371928702976/20031021/1737617_5.shtml">6</A> 
      7 <A 
      href="http://www.yesky.com/SoftChannel/72342371928702976/20031021/1737617_7.shtml">8</A> 
      &nbsp;<A 
      href="http://www.yesky.com/SoftChannel/72342371928702976/20031021/1737617_7.shtml">下一页</A></FONT></P><BR><SPAN 
      class=f14>  <B>如何使用VC++对ADO的扩展</B><BR><BR>  IADORecordBinding接口<BR><BR>  VC++对ADO的扩展联系或绑定了一个Recordset对象的各个字段到C/C++变量。当被绑定的Recordset的当前行改变时,其中所有被绑定的字段的值也同样会被拷贝到相应的C/C++变量中。如果需要,被拷贝的数据还会自动进行相应的数据类型转换。<BR><BR>  IADORecordBinding接口的BindToRecordset方法将字段绑定到C/C++变量之上。AddNew方法则是增加一个新的行到被绑定的Recordset。Update方法利用C/C++变量的值填充Recordset中新的行或更新已存在的行。<BR>IADORecordBinding接口由Recordset对象实现,你不需要自己编码进行实现。<BR><BR>  绑定条目<BR><BR>  VC++对ADO的扩展在一个Recordset对象与一个C/C++变量间进行映像(Map)。一个字段与对应的一个变量间的映像被称作一个绑定条目。预定义的宏为数字、定长或不定长数据提供了绑定条目。所有的绑定条目与相应的C/C++变量都被封装、声明在一个从VC++扩展类CADORecordBinding派生的类中。这个CADORecordBinding类在内部由绑定条目宏定义。<BR><BR>  在ADO内部,将所有宏的参数都映射在一个OLE 
      DB DBBINDING结构中,并创建一个OLE DB访问子(Accessor)对象来管理所有的行为和字段与变量间的数据转换。OLE 
      DB定义的数据由以下三部分组成:存储数据的缓冲区;一个状态值表示一个字段是否被成功地被存入缓冲区,或变量值是否被成功地存入字段;数据长度。(参见OLE 
      DB程序员参考第6章:读写数据的更多信息)<BR><BR>  所需的头文件<BR><BR>  为了使用VC++对ADO的扩展,你得在你的应用中包含这个头文件:#include 
      &lt;icrsint.h&gt;<BR><BR>  绑定Recordset的字段<BR><BR>  要绑定Recordset的字段到C/C++变量,需要这样做: 
      <BR><BR>  1.创建一个CADORecordsetBinding的派生类。<BR><BR>  2.在派生类中定义绑定条目和相应的C/C++变量。注意不要使用逗号、分号切断宏。每个宏都会自动地定义适当的分隔符。<BR><BR>  为每个被映像的字段定义一个绑定条目。并注意根据不同情况选用ADO_FIXED_LENGTH_ENTRY、 
      ADO_NUMERIC_ENTRY、ADO_VARIABLE_LENGTH_ENTRY中的某个宏。<BR><BR>  3.在你的应用中,创建一个该派生类的实例。从Recordset中获得IADORecordBinding接口,然后调用BindToRecordset方法将Recordset的所有字段绑定到对应的C/C++变量之上。<BR><BR>  请参见示例程序以获得更多信息。<BR><BR>  接口方法<BR><BR>  IADORecordBinding接口只有三个方法:BindToRecordset, 
      AddNew,和Update。每个方法所需的唯一的参数就是一个CADORecordBinding派生类的实例指针。因此,AddNew和Update方法不能使用任何与它们同名的ADO方法中的参数。<BR><BR>  语法<BR><BR>  BindToRecordset方法将字段绑定到C/C++变量之上。<BR><BR>BindToRecordset(CADORecordBinding 
      *binding)<BR><BR>  AddNew方法则引用了它的同名ADO函数,来增加一个新的记录行。<BR><BR>AddNew(CADORecordBinding 
      *binding)<BR><BR>  Update方法也引用了它的同名ADO函数,来更新Recordset。<BR><BR>Update(CADORecordBinding 
      *binding)<BR><BR>  绑定条目宏<BR><BR>  绑定条目宏定义了一个Recordset字段与一个变量间的对应关系。每个条目的绑定宏由开始宏与结束宏组成并配对使用。<BR><BR>  定长数据的宏适用于adDate,adBoolean等,数字的宏适用于adTinyInt, 
      adInteger和adDouble等,变长数据的宏适用于adChar, 
      adVarChar和adVarBinary等。所有的数字类型,除了adVarNumeric以外也是定长数据类型。每个宏的族之间都有不同的参数组,因此你可以排除不感兴趣的绑定信息。<BR><BR>  参见OLE 
      DB程序员参考附录A:数据类型的更多信息<BR><BR>  开始绑定条目<BR><BR>BEGIN_ADO_BINDING(Class)<BR><BR>  定长数据:<BR><BR>ADO_FIXED_LENGTH_ENTRY(Ordinal, 
      DataType, Buffer, Status, Modify)<BR>ADO_FIXED_LENGTH_ENTRY2(Ordinal, 
      DataType, Buffer, 
      Modify)<BR><BR>  数字型数据:<BR><BR>ADO_NUMERIC_ENTRY(Ordinal, DataType, 
      Buffer, Precision, Scale, Status, Modify)<BR>ADO_NUMERIC_ENTRY2(Ordinal, 
      DataType, Buffer, Precision, Scale, Modify)<BR><BR>  变长数据: 
      <BR><BR>ADO_VARIABLE_LENGTH_ENTRY(Ordinal, DataType, Buffer, Size, Status, 
      Length, Modify)<BR>ADO_VARIABLE_LENGTH_ENTRY2(Ordinal, DataType, Buffer, 
      Size, Status, Modify)<BR>ADO_VARIABLE_LENGTH_ENTRY3(Ordinal, DataType, 
      Buffer, Size, Length, Modify)<BR>ADO_VARIABLE_LENGTH_ENTRY4(Ordinal, 
      DataType, Buffer, Size, 
      Modify)<BR><BR>  结束绑定<BR><BR>END_ADO_BINDING()<BR><BR>
      <TABLE cellSpacing=0 width="100%" border=1>
        <TBODY>
        <TR>
          <TD width="15%">参数</TD>
          <TD width="85%">描述</TD></TR>
        <TR>
          <TD width="15%">Class</TD>
          <TD width="85%">派生类的名字。</TD></TR>
        <TR>
          <TD width="15%">Ordinal</TD>
          <TD width="85%">从1开始的序号,对应于Recordset中的字段。</TD></TR>
        <TR>
          <TD width="15%">DataType</TD>
          <TD 
            width="85%">与C/C++变量对应的ADO数据类型(参见DataTypeEnum以获得有效数据类型的列表)。如果需要,字段的值会被转换成该类型的值。</TD></TR>
        <TR>
          <TD width="15%">Buffer</TD>
          <TD width="85%">对应的C/C++变量的名字。</TD></TR>
        <TR>
          <TD width="15%">Size</TD>
          <TD width="85%">该C/C++变量的最大字节数。如果是个变长字符串,使用0表示即可。</TD></TR>
        <TR>
          <TD width="15%">Status </TD>
          <TD 
            width="85%">指示变量的名字。该变量用以表示缓冲是否有效,数据转换是否成功。值adFldOK意味着转换成功;adFldNull意味着该字段的值为空。其他可能的值见后面的状态值列表。</TD></TR>
        <TR>
          <TD width="15%">Modify</TD>
          <TD 
            width="85%">逻辑标志。TRUE意味着ADO允许利用变量值更新Recordset中的字段的值。设置该值为TRUE将允许更新,如果你只想检查字段的值而不想改变它那么就设置为FALSE。</TD></TR>
        <TR>
          <TD width="15%">Precision</TD>
          <TD width="85%">数字型变量的位数。</TD></TR>
        <TR>
          <TD width="15%">Scale</TD>
          <TD width="85%">数字型变量的小数位数。</TD></TR>
        <TR>
          <TD width="15%">Length</TD>
          <TD 
      width="85%">一个4字节变量的名字。该变量将包含缓冲区中数据的实际长度。</TD></TR></TBODY></TABLE><BR>  状态值<BR><BR>  变量Status的值指示了一个字段的值是否被成功的拷贝到了对应的变量中。写数据时,可以给Status赋值为adFldNull来指示该字段将被设置为null。<BR><BR>
      <TABLE cellSpacing=0 width="100%" border=1>
        <TBODY>
        <TR>
          <TD width="29%">常量 </TD>
          <TD width="5%">值</TD>
          <TD width="66%">描述</TD></TR>
        <TR>
          <TD width="29%">adFldOK</TD>
          <TD width="5%">0 </TD>
          <TD width="66%">一个非空的字段值被返回。</TD></TR>
        <TR>
          <TD width="29%">adFldBadAccessor </TD>
          <TD width="5%">1 </TD>
          <TD width="66%">绑定无效。</TD></TR>
        <TR>
          <TD width="29%">adFldCantConvertValue</TD>
          <TD width="5%">2 </TD>
          <TD width="66%">值因为符号不匹配或超界外的原因导致无法被正确转换。</TD></TR>
        <TR>
          <TD width="29%">adFldNull </TD>
          <TD width="5%">3 </TD>
          <TD width="66%">读字段值时,指示一个空值被返回。写字段值时,指示当字段自身无法编码NULL时该字段将被设置为NULL。 
          </TD></TR>
        <TR>
          <TD width="29%">adFldTruncated </TD>
          <TD width="5%">4 </TD>
          <TD width="66%">变长数据或数字被截断。</TD></TR>
        <TR>
          <TD width="29%">adFldSignMismatch </TD>
          <TD width="5%">5 </TD>
          <TD width="66%">值是有符号数,而数据类型是无符号数。</TD></TR>
        <TR>
          <TD width="29%">adFldDataOverFlow </TD>
          <TD width="5%">6 </TD>
          <TD width="66%">数据值超出界限。</TD></TR>
        <TR>
          <TD width="29%">adFldCantCreate </TD>
          <TD width="5%">7 </TD>
          <TD width="66%">不知名的列类型和字段已经被打开。</TD></TR>
        <TR>
          <TD width="29%">adFldUnavailable</TD>
          <TD width="5%">8 </TD>
          <TD width="66%">字段值无法确定。比如一个新的未赋值的无缺省值的字段。</TD></TR>
        <TR>
          <TD width="29%">adFldPermissionDenied </TD>
          <TD width="5%">9 </TD>
          <TD width="66%">未被允许更新数据。</TD></TR>
        <TR>
          <TD width="29%">adFldIntegrityViolation </TD>

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -