WEB开发网
开发学院数据库MySQL 使用C连接Mysql 阅读

使用C连接Mysql

 2007-11-13 11:03:58 来源:WEB开发网   
核心提示: mysql为指向该结构的指针,如果mysql为NULL,使用C连接Mysql(6),则新建并初始化一个MYSQL的数据结构,新建的结构将在mysql_close()中释放,而系统的开发、运行成本却大幅降低,如果您正为PC上的数据库效率发愁, 若成功,返回初始化的MYSQL数据结构的指针

mysql为指向该结构的指针,如果mysql为NULL,则新建并初始化一个MYSQL的数据结构。

新建的结构将在mysql_close()中释放。

---- 若成功,返回初始化的MYSQL数据结构的指针,否则返回NULL。

---- 2. MYSQL *mysql_real_connect(MYSQL *mysql, const char *host,

---- const char *user, const char *passwd, const char *db,

---- unsigned int port, const char *unix_socket, unsigned int client_flag)

---- 与MySQL数据库引擎建立连接。在执行进一步的数据操作之前,必须保证mysql_re

al_connect()成功返回。

---- 参数mysql是mysql_init()的返回值;

---- 参数host是运行MySQL数据库引擎的机器的TCP/IP主机名,如为NULL则默认为“lo

calhost”;

---- 参数user和passwd是MySQL数据库的合法用户和口令;

---- 参数db是连接的数据库名;

---- 参数port,unix_socket和client_flag一般取默认值。

---- 3. int mysql_query(MYSQL *mysql, const char *query)

---- 执行query字符串中的SQL语句,query必须以0结尾。如果成功,返回0。

---- 4. MYSQL_RES *mysql_store_result(MYSQL *mysql)

---- 返回SELECT,SHOW,DESCRIBE, EXPLAIN等语句执行的结果。函数新建一个MYSQL_

RES的数据结构,把结果存储在该结构中。如果查询没有匹配的结果,则返回空数据集。

处理完结果集后,必须调用mysql_free_result()。

---- 如果出错,返回NULL,否则返回MYSQL_RES结构的指针。

---- 5. MYSQL_ROW mysql_fetch_row(MYSQL_RES *result)

---- 取回结果集中的下一条记录,如果没有记录或出错,返回NULL。一条记录中的字段

数可以用mysql_num_fields(result)获得,各字段的值可以用row[0] 到 row[mysql_nu

m_fields(result)-1]的数组来访问。

---- 在工程的链接选项中,加入c:mysqlliblibmysql.lib的接口库,把libmysql.d

ll复制到操作系统的system目录下(c:winntsystem32),就可以编译运行了。

---- 到这里,一个简单的数据库应用就开发完成了。当然,MySQL有一套功能丰富的AP

I,大家可以查看文档。另外,如果需要跨平台的移植性,可以考虑用MySQL的ODBC接口

。可以自己配置MySQL的ODBC连接属性,也可以下载myodbc-2.50.29-nt.zip工具包来配

置。

四、总结

---- 作者用MySQL在Windows NT上构建了高性能、高稳定性的数据库系统。这样,既可

以利用Windows NT和Visual C++的友好界面,又可以获得MySQL的强大功能。实践证明,

这种方案成本低(别忘了MySQL是免费的)、效率高、开发周期短、运行稳定(MySQL的

稳定性在Yahoo、163、263等站点获得了极高的评价)。

---- 目前,我的股市行情查询和交易系统已经获得了每秒钟记录70-100条股票行情数

据,同时响应50个并发用户进行数据查询的性能,而系统的开发、运行成本却大幅降低

。如果您正为PC上的数据库效率发愁,不妨也来试试MySQL吧。

上一页  1 2 3 4 5 6 

Tags:使用 连接 Mysql

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接