43数据库编程.pptVIP

  1. 1、本文档共25页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
43数据库编程

4.3 数据库编程 4.3.1 数据库连接技术 1.ODBC 微软公司ODBC(Open Database Connectivity,开放数据库互连),,建立了一组规范,并提供了一组对数据库访问的标准API(应用程序编程接口)。基于ODBC的应用程序对数据库的操作不依赖任何DBMS,由对应的DBMS的ODBC驱动程序完成。能以统一的方式处理所有的数据库。 Microsoft推出的一致数据访问技术,为关系型或非关系型数据访问提供了一致的访问接口。ADO提供了高层软件接口,不仅可在高级语言开发环境中使用,还可以在一些脚本语言中使用,这对于WEB程序访问数据库提供了捷径。OLE DB 提供了底层软件接口 3.JDBC Java 数据库连接JDBC (Java Database Connectivity)由一组用 Java 编程语言编写的类和接口组成。JDBC 为数据库开发人员提供了一个标准的API。程序可在任何平台上运行 。 4.3.2 利用V C开发应用系统 1.MFC ODBC类简介 (1)Cdatabase:建立与数据源的连接 virtual BOOL Open( LPCTSTR lpszDSN, BOOL bExclusive = FALSE, BOOL bReadOnly = FALSE, LPCTSTR lpszConnect = “ODBC;”, BOOL bUseCursorLib = TRUE ); throw( CDBException, CMemoryException ); CDatabase m_db; m_db.Open(MyDS); m_db.Open(NULL,FALSE,FALSE,ODBC;DSN=MyDS; UID=ABC;PWD=1234); virtual void Close( ); (2)CRecordset类 从数据源选择的一组记录(记录集)。 virtual BOOL Open( UINT nOpenType = AFX_DB_USE_DEFAULT_TYPE, LPCTSTR lpszSQL = NULL, DWORD dwOptions = none ); throw( CDBException, CMemoryException ); (3)CRecordView (4)CDBException 该类代表ODBC类产生的异常。 对于数据库操作错误,出现CDBException类型的异常,其它类型的错误,出现CMemoryException异常。 2.执行SQL语句 void ExecuteSQL(LPCTSTR lpszSQL) 3 数据库操作的基本过程 (1)连接数据库 建立CDataBase类对象,通过CDataBase类的Open函数连接数据库。 (2)执行SQL语句 对于要返回结果集的查询操作,可以通过CRecordSet类的Open函数实现,对于不返回结果集的其它SQL语句可以通过CdataBase类的ExecuteSQL函数实现。 (3)断开与数据库的连接 通过CDataBase类的Close函数断开与数据库的连接。 4.3.3 编程实例 连接SQL Server 2000数据库company。 #include stdafx.h #include string #include afxdb.h #ifdef _DEBUG #define new DEBUG_NEW #undef THIS_FILE static char THIS_FILE[] = __FILE__; #endif CDatabase database ; CWinApp theApp; using namespace std; int _tmain(int argc, TCHAR* argv[], TCHAR* envp[]) { int nRetCode = 0; // 初始化MFC并进行判断 if (!AfxWinInit(::GetModuleHandle(NULL), NULL, ::GetCommandLine(), 0)) { // TODO: change error code to suit your needs cerr _T(Fatal Error: MFC initialization failed) endl; nRetCode = 1; } else { BOOL bStatus = false; //设置等待建立连接的时间 database.SetLoginTimeout(10); try { //与数据源LibraryDB建立连接 bStatus=database.Ope

文档评论(0)

zhuwo + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档