当前位置:Gxlcms > mysql > 连接MySQL,用C++库

连接MySQL,用C++库

时间:2021-07-01 10:21:17 帮助过:25人阅读

以下的文章主要介绍的是如何用C++库来对连接MySQL,Oracle与MS SQL数据库的实际操作步骤,我前几天在以信誉度比较好的网上找到一个关于SQLAPI++,可以说是一大惊喜,它是可以访问多个SQL数据库(Oracle(大型网站数据库平台)。 SQLServer,DB2,Sybase,Informix

以下的文章主要介绍的是如何用C++库来对连接MySQL,Oracle与MS SQL数据库的实际操作步骤,我前几天在以信誉度比较好的网上找到一个关于SQLAPI++,可以说是一大惊喜,它是可以访问多个SQL数据库(Oracle(大型网站数据库平台)。

SQLServer,DB2,Sybase,Informix,InterBase,SQLBase,MySQL(和PHP搭配之最佳组合),PostgreSQL)C++库。SQLAPI++直接调用本地目标数据库管理系统(DBMS)的API(不像ADO一样使用OLEDBand/orODBC中间层)。

SQLAPI++库扮演了一个中间件以间接方便访问数据库的角色,这就是为什么SQLAPI++是访问数据库最快的方法。在开发和发布您的应用程序时不再需要安装和配置OLEDBand/orODBC的驱动。

SQLAPI支持的开发平台有MicrosoftVisualC++,BorlandC++Builder,GunProjectCandC++Compiler。

示例代码如下:

  1. #include<stdio.h> //forprintf
  2. #include<SQLAPI.h>//mainSQLAPI++header
  3. intmain(intargc,char*argv[])
  4. {
  5. SAConnectioncon;

连接MySQL数据对象

  1. SACommandcmd(
  2. &con,
  3. "Selectfid,fvarchar20fromtest_tbl");

命令对象,其中包含了一个查询语句,//你在测试的时候可以根据需要修改它。

  1. try
  2. { 


连接数据库

在这个例程中连接的是Oracle(大型网站数据库平台)数据库,

当然它也可以连接Sybase,Informix,DB2

  1. //SQLServer,InterBase,SQLBaseandODBC
  2. con.Connect("test","tester","tester",SA_Oracle(大型网站数据库平台)_Client);


执行查询语句

  1. cmd.Execute();

显示查询后的结果

  1. while(cmd.FetchNext())
  2. {
  3. printf("Rowfetched:fid=%ld,fvarchar20='%s' ",
  4. cmd.Field("fid").asLong(),
  5. (constchar*)cmd.Field("fvarchar20").asString());
  6. }

提交当前事务

  1. con.Commit();
  2. printf("Rowsselected! ");
  3. }
  4. catch(SAException&x)
  5. {

异常处理

  1. try
  2. {

退出当前事务

  1. con.Rollback();
  2. }
  3. catch(SAException&)
  4. {
  5. }

显示错误信息

  1. printf("%s ",(constchar*)x.ErrText());
  2. }
  3. return0;
  4. }

SQLAPI++的官方网站是www.sqlapi.com,它提供评估版本给客户测试。可惜评估版本的库文件在连接MySQL数据库成功后,会弹出一个MessageBox对话框。我在测试它的时候觉得很烦,便把它破解掉了,如果需要可以到我的个人网站去下载它www.szsmart.net,不过只提供BCB的破解版本。

人气教程排行