原创内容,转载请注明原文网址:http://homeqin.cn/a/wenzhangboke/jishutiandi/Android/2019/1017/682.html
下面常州网站开发培训小编给朋友们说明c++与mysql持续的思绪详解及遇到题目汇总,最不错,感乐趣的身边的人参考下吧
最近接触了许多数据库的东西,原来是一直接触的是sql server,但是因为名目需求就开始对mysql进行了持续。下面就让我这个菜鸟浅谈下履历吧。
对于C++持续mysql,我不太稀饭多下载一个软件mysqlodbc,以是接纳的是通过mysql本人的API函数进行持续:
1、应用API的方法持续,需求加载mysql的头文件和lib文件。
在VS2010的附加包含目次中增加\MySQL\MySQL Server 5.1\include。在安置MySql的目次下找。 把libmysql.dll和libmysql.lib文件拷贝到所建的工程目次下。而后在头文件里包含常州软件技术培训以下内容:
//mysql所需的头文件和库文件
#include "winsock.h"
#include "mysql.h"
#pragma co毫米ent(lib,"libmySQL.lib")
2、进行编码
(1)持续mysql数据库
头文件里定义数据源指针 MYSQL m_sqlCon;
//持续MySql数据库
try
{
mysql_init(&m_sqlCon);
// localhost:服务器 root为账号密码 test为数据库名 3306为端口
if(!mysql_real_connect(&m_sqlCon, "localhost","root","root","test",3306,NULL,0))
{
AfxMessageBox(_T("数据库持续失利!"));
return FALSE;
}
return TRUE;
}
catch (...)
{
return FALSE;
}
(2)关闭数据库
mysql_close(&m_sqlCon);
(3)建立表
char* pQuery = "create table if not exists DS_Building( ID VARCHAR(10),Name VARCHAR(255),Descs VARCHAR(255),PRIMARY KEY (ID))"
if(mysql_real_query(&m_sqlCon,pQuery,(UINT)strlen(pQuery))!=0)
{
const char* pCh = mysql_error(&m_sqlCon);
return FALSE;
}
附MySQL的API接口:
1.mysql_affected_rows() 回笼被最新的UPDATE, DELETE或INSERT盘问影响的行数。
2.mysql_close() 关闭一个服务器持续。
3.mysql_connect() 持续一个MySQL服务器。该函数不保举;应用mysql_real_connect()取代。
4.mysql_change_user() 转变在一个翻开的持续上的用户和数据库。
5.mysql_create_db() 建立一个数据库。该函数不保举;而应用SQL号令CREATE DATABASE。
6.mysql_data_seek() 在一个盘问后果鸠合中征采一随便行。
7.mysql_debug() 用给定字符串做一个DBUG_PUSH。
8.mysql_drop_db() 抛弃一个数据库。该函数不保举;而应用SQL号令DROP DATABASE。
9.mysql_dump_debug_info() 让服务器将调试信息写入日记文件。
10.mysql_eof() 确定是否曾经读到一个后果鸠合的最后一行。这功效被反对; mysql_errno()或mysql_error()可以相反被应用。
11.mysql_errno() 回笼最近被挪用的MySQL函数的失足编号。
12.mysql_error() 回笼最近被挪用的MySQL函数的失足消息。
13.mysql_escape_string() 用在SQL语句中的字符串的转义分外字符。
14.mysql_fetch_field() 回笼下一个表字段的范例。
15.mysql_fetch_field_direct () 回笼一个表字段的范例,给出一个字段编号。
16.mysql_fetch_fields() 回笼一个所有字段布局的数组。
17.mysql_fetch_lengths() 回笼目前行中所有列的长度。
18.mysql_fetch_row() 从后果鸠合中获得下一行。
19.mysql_field_seek() 把列光标放在一个指定的列上。
20.mysql_field_count() 回笼最近盘问的后果列的数目。
21.mysql_field_tell() 回笼用于最后一个mysql_fetch_field()的字段光标的位置。
22.mysql_free_result() 开释一个后果鸠合应用的内存。
23.mysql_get_client_info() 回笼客户版本信息。
24.mysql_get_host_info() 回笼一个形貌持续的字符串。
25.mysql_get_proto_info() 回笼持续应用的和谈版本。
26.mysql_get_server_info() 回笼服务器版本号。
27.mysql_info() 回笼对于最近执行得盘问的信息。
28.mysql_init() 获得或初始化一个MYSQL布局。
29.mysql_insert_id() 回笼有前一个盘问为一个AUTO_INCREMENT列生成的ID。
30.mysql_kill() 杀死一个给定的线程。
31.mysql_list_dbs() 回笼般配一个简单的正则表白式的数据库名。
32.mysql_list_fields() 回笼般配一个简单的正则表白式的列名。
33.mysql_list_processes() 回笼目前服务器线程的一张表。
34.mysql_list_tables() 回笼般配一个简单的正则表白式的表名。
35.mysql_num_fields() 回笼一个后果鸠合重的列的数目。
36.mysql_num_rows() 回笼一个后果鸠合中的行的数目。
37.mysql_options() 配置对mysql_connect()的持续选项。
38.mysql_ping() 搜检对服务器的持续是否正在事情,须要时从新持续。
39.mysql_query() 执行指定为一个空结尾的字符串的SQL盘问。
40.mysql_real_connect() 持续一个MySQL服务器。
41.mysql_real_query() 执行指定为带计数的字符串的SQL盘问。
42.mysql_reload() 报告服务器重装授权表。
43.mysql_row_seek() 搜刮在后果鸠合中的行,应用从mysql_row_tell()回笼的值。
44.mysql_row_tell() 回笼行光标位置。
45.mysql_select_db() 持续一个数据库。
46.mysql_shutdown() 关掉数据库服务器。
47.mysql_stat() 回笼作为字符串的服务器状况。
48.mysql_store_result() 检索一个完备的后果鸠合给客户。
49.mysql_thread_id() 回笼目前线程的ID。
50.mysql_use_result() 初始化一个一行一行地后果鸠合的检索。
所遇到的题目:
刚开始我常州平台运营用VS2015持续mysql,发现一直出现无法分析外部象征这种错误,找了良久看了链接器那些发现没有甚么错啊。后来找了良久发现是因为VS默认的运转平台是32位的,而我的mysql是64位.对于这种你只需求在名目属性的配置经管中把运转平台改成x64即可。固然,也能够下一个mysql32位的Lib和dll。
以上所述是小编给朋友们说明的C++与mysql持续遇到的题目汇总,有望对朋友们有所赞助,要是朋友们有任何疑难请给我留言,小编会实时回复朋友们的。在此也最感谢朋友们对ht网站的支持!
上篇:上一篇:android am号令用法
下篇:下一篇:安卓百度地图6.0以上无法定位的问题