当前位置: 首页 > news >正文

专业集团门户网站建设/搜索引擎优化的方法包括

专业集团门户网站建设,搜索引擎优化的方法包括,福建龙岩疫情最新情况,网站建设插导航条今天在网上本来想为我的毕业设计找个连接数据库的方法,看到什么C用ADO连MySQL,MySql和连接驱动是装了,但是在ODBC配置连接源的时候,没有连接驱动。算了,换个方法吧!翻着翻着发现通过API直连的方法&#xff…

今天在网上本来想为我的毕业设计找个连接数据库的方法,看到什么C++用ADO连MySQL,MySql和连接驱动是装了,但是在ODBC配置连接源的时候,没有连接驱动。算了,换个方法吧!翻着翻着发现通过API直连的方法,试了一下,感觉挺好用,写下来分享给大家,顺便记录下来方便下次使用,遗憾的是我把那个网页叉掉了,如果是作者,可以联系我让我补上链接。


过程很简单,前提是你的MySql已经完好的装上了。:

第一:在你MySQL安装目录下找到include文件夹,把它全部拷贝你的项目文件夹 里,

第二:在你MySQL安装目录下找到  lib文件夹,打开 lib 文件夹 ,将libmysql.dll  和 libmysql.lib 拷贝你的项目文件夹 里。


复制下面的代码,并修改相应的配置信息即可:(里面我改了表的信息做测试用)

#include <cstdio>
#include <WinSock.h>  //一定要包含这个,或者winsock2.h
#include "include\mysql.h"//引入mysql头文件(一种方式是在vc目录里面设置,一种是文件夹拷到工程目录,然后这样包含)
#include <Windows.h>//包含附加依赖项,也可以在工程--属性里面设置
#pragma comment(lib,"wsock32.lib")
#pragma comment(lib,"libmysql.lib")
MYSQL mysql; //mysql连接
MYSQL_FIELD *fd;  //字段列数组
char field[32][32];  //存字段名二维数组
MYSQL_RES *res; //这个结构代表返回行的一个查询结果集
MYSQL_ROW column; //一个行数据的类型安全(type-safe)的表示,表示数据行的列
char query[150]; //查询语句bool ConnectDatabase();     //函数声明
void FreeConnect();
bool QueryDatabase1();  //查询1
bool QueryDatabase2();  //查询2
bool InsertData();
bool ModifyData();
bool DeleteData();
int main(int argc, char **argv)
{ConnectDatabase();QueryDatabase1();InsertData();QueryDatabase2();ModifyData();QueryDatabase2();DeleteData();QueryDatabase2();FreeConnect();system("pause");return 0;
}
//连接数据库
bool ConnectDatabase()
{//初始化mysqlmysql_init(&mysql);  //连接mysql,数据库//返回false则连接失败,返回true则连接成功if (!(mysql_real_connect(&mysql, "localhost", "root", "root", "mydb", 0, NULL, 0))) //中间分别是主机,用户名,密码,数据库名,端口号(可以写默认0或者3306等),可以先写成参数再传进去{printf("Error connecting to database:%s\n", mysql_error(&mysql));return false;}else{printf("Connected...\n");return true;}
}
//释放资源
void FreeConnect()
{//释放资源mysql_free_result(res);mysql_close(&mysql);
}
/***************************数据库操作***********************************/
//其实所有的数据库操作都是先写个sql语句,然后用mysql_query(&mysql,query)来完成,包括创建数据库或表,增删改查
//查询数据
bool QueryDatabase1()
{sprintf(query, "select * from SenSorData"); //执行查询语句,这里是查询所有,user是表名,不用加引号,用strcpy也可以mysql_query(&mysql, "set names gbk"); //设置编码格式(SET NAMES GBK也行),否则cmd下中文乱码//返回0 查询成功,返回1查询失败if (mysql_query(&mysql, query))        //执行SQL语句{printf("Query failed (%s)\n", mysql_error(&mysql));return false;}else{printf("query success\n");}//获取结果集if (!(res = mysql_store_result(&mysql)))    //获得sql语句结束后返回的结果集{printf("Couldn't get result from %s\n", mysql_error(&mysql));return false;}//打印数据行数printf("number of dataline returned: %d\n", mysql_affected_rows(&mysql));//获取字段的信息char *str_field[32];  //定义一个字符串数组存储字段信息for (int i = 0; i<6; i++)   //在已知字段数量的情况下获取字段名{str_field[i] = mysql_fetch_field(res)->name;}for (int i = 0; i<6; i++)   //打印字段printf("%10s\t", str_field[i]);printf("\n");//打印获取的数据while (column = mysql_fetch_row(res))   //在已知字段数量情况下,获取并打印下一行{printf("%10s\t%10s\t%10s\t%10s\t%10s\n", column[0], column[1], column[2], column[3],column[4],column[5]);  //column是列数组}return true;
}
bool QueryDatabase2()
{mysql_query(&mysql, "set names gbk");//返回0 查询成功,返回1查询失败if (mysql_query(&mysql, "select * from user"))        //执行SQL语句{printf("Query failed (%s)\n", mysql_error(&mysql));return false;}else{printf("query success\n");}res = mysql_store_result(&mysql);//打印数据行数printf("number of dataline returned: %d\n", mysql_affected_rows(&mysql));for (int i = 0; fd = mysql_fetch_field(res); i++)  //获取字段名strcpy(field[i], fd->name);int j = mysql_num_fields(res);  // 获取列数for (int i = 0; i<j; i++)  //打印字段printf("%10s\t", field[i]);printf("\n");while (column = mysql_fetch_row(res)){for (int i = 0; i<j; i++)printf("%10s\t", column[i]);printf("\n");}return true;
}
//插入数据
bool InsertData()
{sprintf(query, "insert into user values (NULL, 'Lilei', 'wyt2588zs','lilei23@sina.cn');");  //可以想办法实现手动在控制台手动输入指令if (mysql_query(&mysql, query))        //执行SQL语句{printf("Query failed (%s)\n", mysql_error(&mysql));return false;}else{printf("Insert success\n");return true;}
}
//修改数据
bool ModifyData()
{sprintf(query, "update user set email='lilei325@163.com' where name='Lilei'");if (mysql_query(&mysql, query))        //执行SQL语句{printf("Query failed (%s)\n", mysql_error(&mysql));return false;}else{printf("Insert success\n");return true;}
}
//删除数据
bool DeleteData()
{/*sprintf(query, "delete from user where id=6");*/char query[100];printf("please input the sql:\n");gets_s(query);  //这里手动输入sql语句if (mysql_query(&mysql, query))        //执行SQL语句{printf("Query failed (%s)\n", mysql_error(&mysql));return false;}else{printf("Insert success\n");return true;}
}



http://www.lbrq.cn/news/769267.html

相关文章:

  • 泉州优化seo网站关键词优化/网站备案查询工信部官网
  • wordpress修改css样式的方法/广州seo黑帽培训
  • 单位网站建设费如何入账/网络营销公司经营范围
  • 毕业设计 做网站/武汉好的seo优化网
  • 广告设计图片大全模板/百度的关键词优化
  • 如何做高校的网站版面设计/体验营销
  • 武汉便宜做网站公司/成都最新消息今天
  • 万维建设网站/什么叫做关键词
  • htmlcss做旅游网站/企业培训考试
  • 网页设计最牛的网站建设/长春seo招聘
  • 怎么使用dw做一个网站/深圳发布最新通告
  • 网站设计 网站建设/怎么策划一个营销方案
  • 做外国语上门按摩服务网站/百度最贵关键词排名
  • 建设手机网站赚钱吗/排位及资讯
  • 海外贸易在什么网站做/今天重大新闻事件
  • 酒泉网站建设公司/网页设计友情链接怎么做
  • 网站后台程序和数据库开发/视频营销成功的案例
  • 外贸网站APP/手机怎么自己制作网页
  • 网站关键字布局/如何建立网站平台
  • 深圳网站建设优化czzhwm/如何建立个人网站的步骤
  • 沈阳网站制作/提供seo顾问服务适合的对象是
  • 学做美食网站/搜索引擎优化方法有哪几种
  • 不一样的婚恋网站怎么做/互联网营销师报考条件
  • 武汉网站建设电话多少钱/自己怎么做网站优化
  • 网站开发 web应用/点击宝seo
  • 建设部166号令住建部网站/seo面试常见问题及答案
  • 宝安网站优化/廊坊网站排名优化公司哪家好
  • 电商网站的建设与安全/网站建设推广专家服务
  • 织梦网站导入链接怎么做/成都百度推广电话
  • 深圳 企业网站建设/网站测试
  • 51单片机-51单片机最小系统
  • ROS2实用工具
  • 面试实战 问题二十九 Java 值传递与引用传递的区别详解
  • 完整多端口 Nginx Docker部署 + GitLab Runner注册及标签使用指南
  • Linux下安装jdk
  • Java AI生成长篇小说的实用