原文地址:C++ MFC连接mysql
作者:鲨鱼
使用API的方式连接,需要加载mysql的头文件和lib文件。
在VS2010的附加包含目录中添加MySQLMySQL Server 5.1include。在安装MySql的目录下找。把libmysql.dll和libmysql.lib文件拷贝到所建的工程目录下。然后在头文件里包含以下内容:
- //mysql所需的头文件和库文件
- #include
"winsock.h" - #include
"mysql.h" - #pragma
comment(lib,"libmySQL.lib")
头文件里定义数据源指针 MYSQL m_sqlCon;
mysql_init(&m_sqlCon);
// localhost:服务器 root为账号密码 test为数据库名 3306为端口
if(!mysql_real_connect(&m_sqlCon,"localhost","root","root","mysql",3306,NULL,0))
{
AfxMessageBox(_T("数据库连接失败!"));
}
附MySQL的API接口:
- mysql_affected_rows()
返回被最新的UPDATE, DELETE或INSERT查询影响的行数。 - mysql_close()
关闭一个服务器连接。 - mysql_connect()
连接一个MySQL服务器。该函数不推荐;使用mysql_real_connect()代替。 - mysql_change_user()
改变在一个打开的连接上的用户和数据库。 - mysql_create_db()
创建一个数据库。该函数不推荐;而使用SQL命令CREATE DATABASE。 - mysql_data_seek()
在一个查询结果集合中搜寻一任意行。 - mysql_debug()
用给定字符串做一个DBUG_PUSH。 - mysql_drop_db()
抛弃一个数据库。该函数不推荐;而使用SQL命令DROP DATABASE。 - mysql_dump_debug_info()
让服务器将调试信息写入日志文件。 - mysql_eof()
确定是否已经读到一个结果集合的最后一行。这功能被反对; mysql_errno()或mysql_error()可以相反被使用。 - mysql_errno()
返回最近被调用的MySQL函数的出错编号。 - mysql_error()
返回最近被调用的MySQL函数的出错消息。 - mysql_escape_string()
用在SQL语句中的字符串的转义特殊字符。 - mysql_fetch_field()
返回下一个表字段的类型。 - mysql_fetch_field_direct
() 返回一个表字段的类型,给出一个字段编号。 - mysql_fetch_fields()
返回一个所有字段结构的数组。 - mysql_fetch_lengths()
返回当前行中所有列的长度。 - mysql_fetch_row()
从结果集合中取得下一行。 - mysql_field_seek()
把列光标放在一个指定的列上。 - mysql_field_count()
返回最近查询的结果列的数量。 - mysql_field_tell()
返回用于最后一个mysql_fetch_field()的字段光标的位置。 - mysql_free_result()
释放一个结果集合使用的内存。 - mysql_get_client_info()
返回客户版本信息。 - mysql_get_host_info()
返回一个描述连接的字符串。 - mysql_get_proto_info()
返回连接使用的协议版本。 - mysql_get_server_info()
返回服务器版本号。 - mysql_info()
返回关于最近执行得查询的信息。 - mysql_init()
获得或初始化一个MYSQL结构。 - mysql_insert_id()
返回有前一个查询为一个AUTO_INCREMENT列生成的ID。 - mysql_kill()
杀死一个给定的线程。 - mysql_list_dbs()
返回匹配一个简单的正则表达式的数据库名。 - mysql_list_fields()
返回匹配一个简单的正则表达式的列名。 - mysql_list_processes()
返回当前服务器线程的一张表。 - mysql_list_tables()
返回匹配一个简单的正则表达式的表名。 - mysql_num_fields()
返回一个结果集合重的列的数量。 - mysql_num_rows()
返回一个结果集合中的行的数量。 - mysql_options()
设置对mysql_connect()的连接选项。 - mysql_ping()
检查对服务器的连接是否正在工作,必要时重新连接。 - mysql_query()
执行指定为一个空结尾的字符串的SQL查询。 - mysql_real_connect()
连接一个MySQL服务器。 - mysql_real_query()
执行指定为带计数的字符串的SQL查询。 - mysql_reload()
告诉服务器重装授权表。 - mysql_row_seek()
搜索在结果集合中的行,使用从mysql_row_tell()返回的值。 - mysql_row_tell()
返回行光标位置。 - mysql_select_db()
连接一个数据库。 - mysql_shutdown()
关掉数据库服务器。 - mysql_stat()
返回作为字符串的服务器状态。 - mysql_store_result()
检索一个完整的结果集合给客户。 - mysql_thread_id()
返回当前线程的ID。 - mysql_use_result()
初始化一个一行一行地结果集合的检索。