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

📄 chap10_8.htm

📁 非常好的应用vc++6.0进行相关网络程序开发的教程
💻 HTM
📖 第 1 页 / 共 2 页
字号:
      <blockquote>
        <blockquote>
          </font><font FACE="Times New Roman" SIZE="3"><p ALIGN="JUSTIFY">virtual void Open( LPCTSTR 
          lpszName, BOOL bExclusive = FALSE, BOOL bReadOnly = FALSE, LPCTSTR lpszConnect = 
          _T(&quot;&quot;) );<br>
          throw( CDaoException, CMemoryException );</font></p>
        </blockquote>
      </blockquote>
    </blockquote>
    <p><font SIZE="3"> </p>
    <p ALIGN="JUSTIFY">参数</font><font FACE="Times New Roman" SIZE="3">bExclusive</font><font SIZE="3">如果为</font><font FACE="Times New Roman" SIZE="3">TRUE</font><font SIZE="3">,则函数以独占方式打开数据库,否则就用共享方式。如果</font><font FACE="Times New Roman" SIZE="3">bReadOnly</font><font SIZE="3">为</font><font FACE="Times New Roman" SIZE="3">TRUE</font><font SIZE="3">,那么就以只读方式打开数据库。如果要打开一个</font><font FACE="Times New Roman" SIZE="3">Access</font><font SIZE="3">数据库,则可以在</font><font FACE="Times New Roman" SIZE="3">lpszName</font><font SIZE="3">参数中指定</font><font FACE="Times New Roman" SIZE="3">MDB</font><font SIZE="3">文件名。如果要访问非</font><font FACE="Times New Roman" SIZE="3">Access</font><font SIZE="3">数据库,则应使该参数为“”,并在</font><font FACE="Times New Roman" SIZE="3">lpszConnect</font><font SIZE="3">中说明一个连接字符串。连接字符串的形式一般为 
    “数据库类型</font><font FACE="Times New Roman" SIZE="3">;DATABASE=</font><font SIZE="3">路径(文件)”,例如 “</font><font FACE="Times New Roman" SIZE="3">dBASE 
    III;DATABASE=c:\\MYDIR</font><font SIZE="3">”</font><font FACE="Times New Roman" SIZE="3"></p>
    <p ALIGN="JUSTIFY">Open</font><font SIZE="3">函数也可以打开一个</font><font FACE="Times New Roman" SIZE="3">ODBC</font><font SIZE="3">数据源,但这需要相应的</font><font FACE="Times New Roman" SIZE="3">ODBC</font><font SIZE="3">驱动程序,并需要在</font><font FACE="Times New Roman" SIZE="3">ODBC</font><font SIZE="3">管理器中注册</font><font FACE="Times New Roman" SIZE="3">DSN</font><font SIZE="3">。此时</font><font FACE="Times New Roman" SIZE="3">lpszConnect</font><font SIZE="3">的形式为 “</font><font FACE="Times New Roman" SIZE="3">ODBC;DSN=MyDataSource</font><font SIZE="3">”。显然,用</font><font FACE="Times New Roman" SIZE="3">DAO</font><font SIZE="3">访问象</font><font FACE="Times New Roman" SIZE="3">FoxPro</font><font SIZE="3">这样的数据库时,直接打开比把它当作</font><font FACE="Times New Roman" SIZE="3">ODBC</font><font SIZE="3">数据源打开要省事。</font><font FACE="Times New Roman" SIZE="3"></p>
    <p ALIGN="JUSTIFY"></font><font SIZE="3">支持</font><font FACE="Times New Roman" SIZE="3">DDL</font><font SIZE="3">是</font><font FACE="Times New Roman" SIZE="3">DAO</font><font SIZE="3">对数据库编程良好支持的一个重要体现。</font><font FACE="Times New Roman" SIZE="3">DDL(Data Definition Language)</font><font SIZE="3">在</font><font FACE="Times New Roman" SIZE="3">SQL</font><font SIZE="3">术语中叫做“数据定义语言”,它用来完成生成、修改和删除数据库结构的操作。</font><font FACE="Times New Roman" SIZE="3">ODBC</font><font SIZE="3">类只支持</font><font FACE="Times New Roman" SIZE="3">DML(Data Manipulation Language</font><font SIZE="3">,数据操作语言</font><font FACE="Times New Roman" SIZE="3">)</font><font SIZE="3">,不支持</font><font FACE="Times New Roman" SIZE="3">DDL</font><font SIZE="3">,所以用</font><font FACE="Times New Roman" SIZE="3">ODBC</font><font SIZE="3">类只能完成数据的操作,不能涉及数据库的结构。要执行</font><font FACE="Times New Roman" SIZE="3">DDL</font><font SIZE="3">操作,只有通过</font><font FACE="Times New Roman" SIZE="3">ODBC API</font><font SIZE="3">。而</font><font FACE="Times New Roman" SIZE="3">DAO</font><font SIZE="3">类同时提供了对</font><font FACE="Times New Roman" SIZE="3">DML</font><font SIZE="3">和</font><font FACE="Times New Roman" SIZE="3">DDL</font><font SIZE="3">的支持,这意味着程序可以使用</font><font FACE="Times New Roman" SIZE="3">DAO</font><font SIZE="3">类方便的创建数据库及修改数据库的结构。</font><font FACE="Times New Roman" SIZE="3"></p>
    <p ALIGN="JUSTIFY"></font><font SIZE="3">与</font><font FACE="Times New Roman" SIZE="3">ODBC</font><font SIZE="3">相比,</font><font FACE="Times New Roman" SIZE="3">DAO</font><font SIZE="3">提供了一些新类来加强其功能,这些新类包括:</p>
    <blockquote>
      <blockquote>
        </font><font FACE="Times New Roman" SIZE="3"><p ALIGN="JUSTIFY">CDaoTableDef</font><font SIZE="3">类提供了对表的结构的定义。调用</font><font FACE="Times New Roman" SIZE="3">CDaoTableDef::Open</font><font SIZE="3">可以获得表的结构定义。调用</font><font FACE="Times New Roman" SIZE="3">CDaoTableDef::Create</font><font SIZE="3">可以创建一张新表,调用</font><font FACE="Times New Roman" SIZE="3">CDaoTableDef:: CreateField</font><font SIZE="3">可为表添加字段,调用</font><font FACE="Times New Roman" SIZE="3">CDaoTableDef::CreateIndex</font><font SIZE="3">可以为表添加索引。调用</font><font FACE="Times New Roman" SIZE="3">CDaoTableDef::Append</font><font SIZE="3">可以把新创建的表保存到数据库中。</p>
        </font><font FACE="Times New Roman" SIZE="3"><p ALIGN="JUSTIFY">CDaoQueryDef</font><font SIZE="3">类代表一个查询定义</font><font FACE="Times New Roman" SIZE="3">(Query 
        definition)</font><font SIZE="3">,该定义可以被存储到数据库中。</p>
        </font><font FACE="Times New Roman" SIZE="3"><p ALIGN="JUSTIFY">CDaoWorkspace</font><font SIZE="3">提供了数据工作区</font><font FACE="Times New Roman" SIZE="3">(Workspace)</font><font SIZE="3">。一个工作区可以包含几个数据库,工作区可以对所属的数据库进行全体或单独的事务处理,工作区也负责数据库的安全性。如果需要,程序可以打开多个工作区。</font></p>
      </blockquote>
    </blockquote>
    <p><font SIZE="3"> </font><font FACE="Times New Roman" SIZE="3"></p>
    <p ALIGN="JUSTIFY">DAO</font><font SIZE="3">的另一个重要特色在于它对</font><font FACE="Times New Roman" SIZE="3">Access</font><font SIZE="3">数据库提供了强大的支持。由于</font><font FACE="Times New Roman" SIZE="3">DAO</font><font SIZE="3">是基于</font><font FACE="Times New Roman" SIZE="3">Microsoft Jet</font><font SIZE="3">引擎的,所以</font><font FACE="Times New Roman" SIZE="3">DAO</font><font SIZE="3">肯定要在</font><font FACE="Times New Roman" SIZE="3">Access</font><font SIZE="3">数据库上多作一些文章。例如,调用</font><font FACE="Times New Roman" SIZE="3">CDaoDatabase::Create</font><font SIZE="3">可以直接建立一个</font><font FACE="Times New Roman" SIZE="3">MDB</font><font SIZE="3">文件,代码如下所示:<br>
    </font><font FACE="Times New Roman" SIZE="3">m_db.Create(</font><font SIZE="3">“</font><font FACE="Times New Roman" SIZE="3">C:\\MYDIR\\MYDB.MDB</font><font SIZE="3">”</font><font FACE="Times New Roman" SIZE="3">);</p>
    <p ALIGN="JUSTIFY"></font><font SIZE="3">利用</font><font FACE="Times New Roman" SIZE="3">AppWizard</font><font SIZE="3">和</font><font FACE="Times New Roman" SIZE="3">ClassWizard</font><font SIZE="3">,用户可以方便地开发出性能优良的基于</font><font FACE="Times New Roman" SIZE="3">DAO</font><font SIZE="3">的</font><font FACE="Times New Roman" SIZE="3">Access</font><font SIZE="3">数据库应用程序。</font><font FACE="Times New Roman" SIZE="3"></p>
    <b><p ALIGN="JUSTIFY"></b></font><font color="#3973DE" FACE="Times New Roman" SIZE="3">10.8.4 
    ODBC</font><font SIZE="3" color="#3973DE">还是</font><font color="#3973DE" FACE="Times New Roman" SIZE="3">DAO</font><font FACE="Times New Roman" SIZE="3"></p>
    <p ALIGN="JUSTIFY"></font><font SIZE="3">由于</font><font FACE="Times New Roman" SIZE="3">DAO</font><font SIZE="3">可以访问</font><font FACE="Times New Roman" SIZE="3">ODBC</font><font SIZE="3">数据源,下面几条可以作为</font><font FACE="Times New Roman" SIZE="3">DAO</font><font SIZE="3">替代</font><font FACE="Times New Roman" SIZE="3">ODBC</font><font SIZE="3">的理由:</p>
    <ul>
      <li><p ALIGN="JUSTIFY">在某些情况下可以获得更好的性能,特别是在访问<font FACE="Times New Roman" SIZE="3">Microsoft Jet</font>(<font FACE="Times New Roman" SIZE="3">.MDB</font>)数据库时。</p>
      </li>
      <li><p ALIGN="JUSTIFY">与<font FACE="Times New Roman" SIZE="3">ODBC</font>兼容</p>
      </li>
      <li><font FACE="Times New Roman" SIZE="3"><p ALIGN="JUSTIFY">DAO</font>允许数据有效检查</p>
      </li>
      <li><font FACE="Times New Roman" SIZE="3"><p ALIGN="JUSTIFY">DAO</font>允许用户说明表与表之间的关系</font></p>
      </li>
    </ul>
    <p><font SIZE="3"> </font><font FACE="Times New Roman" SIZE="3"></p>
    <p ALIGN="JUSTIFY"></font><font SIZE="3">当然,</font><font FACE="Times New Roman" SIZE="3">DAO</font><font SIZE="3">的出现并不意味着</font><font FACE="Times New Roman" SIZE="3">ODBC</font><font SIZE="3">已经过时了。如果用户的工作必须严格限于</font><font FACE="Times New Roman" SIZE="3">ODBC</font><font SIZE="3">数据源,尤其是在开发</font><font FACE="Times New Roman" SIZE="3">Client/Server</font><font SIZE="3">结构的应用程序时,用</font><font FACE="Times New Roman" SIZE="3">ODBC</font><font SIZE="3">有较好的性能。</font><font FACE="Times New Roman" SIZE="3"></p>
    </font><div align="center"><center><table border="0" cellpadding="0" cellspacing="0" width="615">
      <tr>
        <td><a href="chap10_7.htm">上一页</a></td>
        <td><p align="right"><a href="chap10_9.htm">下一页</a></td>
      </tr>
    </table>
    </center></div><font SIZE="5"><hr noshade color="#3973DE" size="1">
    <p align="center"></font><font size="2" color="#000000">本教程由<a href="http://vcdynasty.yeah.net">Visual C++王朝(Where programmers come together)</a>协助制作<br>
    未经许可,请勿以任何形式复制</font></td>
    <b>
  </tr>
</table>
</center></div>

<p ALIGN="CENTER"></b><font SIZE="5"> </font><font FACE="Times New Roman" SIZE="5"></p>
</font><font FACE="Times New Roman" SIZE="3">

<p></font><b><font SIZE="3"> </font><font FACE="Times New Roman" SIZE="3"></p>
</font></b>

<p><font SIZE="3"> </font><font FACE="Times New Roman" SIZE="3"></p>

<p></font> </p>
</body>
</html>

⌨️ 快捷键说明

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