首页 > 编程知识 正文

c语言连接云服务器mysql,windows连接云服务器

时间:2023-12-28 21:10:50 阅读:328753 作者:KTDE

本文目录一览:

C语言怎样连接mysql数据库

mysql是有c语言接口的,安装相应库后就可以链接了,一般连接mysql的函数是mysql_connect或者mysql_real_connect(大概就是这么拼的吧。。。)可以使用mysql_query执行sql语句

mysql与c语言连接,代码求解释。

if (!mysql_real_connect(mysql,"localhost", "root", "", "drug management", 3306, NULL, 0)) //判断数据库连接是否成功

 if(t) //t是mysql_real_query的返值,使用if来判断sql语句执行是否成功。

c语言怎么连接mysql数据库 代码

//vc工具中添加E:WAMPBINMYSQLMYSQL5.5.8LIB 路径

//在工程设置-》链接》库模块中添加 libmysql.lib

#include stdio.h

#include time.h

#include string.h

#include winsock.h

#include "E:wampbinmysqlmysql5.5.8includemysql.h"

void main(){

MYSQL *conn;

MYSQL_RES *res;

MYSQL_ROW row;

char *server ="localhost";

char *user ="root";

char *password="";

char *database="test";

char sql[1024]="select * from chinaren";

conn=mysql_init(NULL);

if(!mysql_real_connect(conn,server,user,password,database,0,NULL,0)){

fprintf(stderr,"%sn",mysql_error(conn));

exit(1);

}

if(mysql_query(conn,sql)){

fprintf(stderr,"%sn",mysql_error(conn));

exit(1);

}

res=mysql_use_result(conn);

while((row = mysql_fetch_row(res))!=NULL){

printf("%sn",row[2]);

}

mysql_free_result(res);

mysql_close(conn);

}

===============================

#if defined(_WIN32) || defined(_WIN64) //为了支持windows平台上的编译

#include windows.h

#endif

#include stdio.h

#include stdlib.h

#include "mysql.h"

//定义数据库操作的宏,也可以不定义留着后面直接写进代码

#define SELECT_QUERY "show tables;"

int main(int argc, char **argv) //char **argv 相当于 char *argv[]

{

MYSQL mysql,*handle; //定义数据库连接的句柄,它被用于几乎所有的MySQL函数

MYSQL_RES *result; //查询结果集,结构类型

MYSQL_FIELD *field ; //包含字段信息的结构

MYSQL_ROW row ; //存放一行查询结果的字符串数组

char querysql[160]; //存放查询sql语句字符串

//初始化

mysql_init(mysql);

//连接数据库

if (!(handle = mysql_real_connect(mysql,"localhost","user","pwd","dbname",0,NULL,0))) {

fprintf(stderr,"Couldn't connect to engine!n%snn",mysql_error(mysql));

}

sprintf(querysql,SELECT_QUERY,atoi(argv[1]));

//查询数据库

if(mysql_query(handle,querysql)) {

fprintf(stderr,"Query failed (%s)n",mysql_error(handle));

}

//存储结果集

if (!(result=mysql_store_result(handle))) {

fprintf(stderr,"Couldn't get result from %sn", mysql_error(handle));

}

printf("number of fields returned: %dn",mysql_num_fields(result));

//读取结果集的内容

while (row = mysql_fetch_row(result)) {

printf("table: %sn",(((row[0]==NULL)(!strlen(row[0]))) ? "NULL" : row[0]) ) ;

}

//释放结果集

mysql_free_result(result);

//关闭数据库连接

mysql_close(handle);

system("PAUSE");

//为了兼容大部分的编译器加入此行

return 0;

}

用C语言如何对MySQL数据库进行操作

有时为了性能,我们会直接用C语言来开发相关的模块,尤其在我们的web应用中,虽然PHP、JSP等脚本均提供了MySQL的接口,但是显然直接使用C语言具有更好的安全性和性能,Michael以前用PHP开发的多个项目中就使用了C语言编写的这类接口,然后再编译到php里面,供php脚本直接使用,这方面的话题就不多说了,下面主要说一下在Linux下如何用C语言连接MySQL数据库,并且读取里面的数据返回,同时如何进行编译。if defined(_WIN32) || defined(_WIN64)为了支持windows平台上的编译#includewindows.h#endif#includestdio.h#includestdlib.h#includemysql.h我的机器上该文件在/usr/local/include/mysql下定义MySQL数据库操作的宏,也可以不定义留着后面直接写进代码defineSELECT_QUERYselectusernamefromtbb_userwhereuserid=%dintmain(intargc,char**argv)char**argv相当于char*argv[]{MYSQL mysql,*sock;定义数据库连接的句柄,它被用于几乎所有的MySQL函数MYSQL_RES *res;查询结果集,结构类型MYSQL_FIELD *fd ;包含字段信息的结构MYSQL_ROW row ;存放一行查询结果的字符串数组char qbuf[160];存放查询sql语句字符串if(argc!=2){//检查输入参数fprintf(stderr,usage:mysql_selectuseridnn);exit(1);}mysql_init(mysql);if(!(sock=mysql_real_connect(mysql,localhost,dbuser,dbpwd,9tmd_bbs_utf8,0,NULL,0))){fprintf(stderr,Couldn'tconnecttoengine!n%snn,mysql_error(mysql));perror();exit(1);}sprintf(qbuf,SELECT_QUERY,atoi(argv[1]));if(mysql_query(sock,qbuf)){fprintf(stderr,Queryfailed(%s)n,mysql_error(sock));exit(1);}if(!(res=mysql_store_result(sock))){fprintf(stderr,Couldn'tgetresultfrom%sn,mysql_error(sock));exit(1);}printf(numberoffieldsreturned:%dn,mysql_num_fields(res));while(row=mysql_fetch_row(res)){printf(Theruserid#%d'susernameis:%sn,atoi(argv[1]),(((row[0]==NULL)(!strlen(row[0])))?NULL:row[0]));puts(queryok!n);}mysql_free_result(res);mysql_close(sock);exit(0);return0;为了兼容大部分的编译器加入此行}编译的时候,使用下面的命令gcc -o mysql_select ./mysql_select.c -I/usr/local/include/mysql -L/usr/local/lib/mysql -lmysqlclient (-lz) (-lm) 后面两个选项可选,根据您的环境情况运行的时候,执行下面的命令./mysql_select 1将返回如下结果:numberoffieldsreturned:1Theruserid#1'susernameis:Michaelqueryok!上面的代码我想大部分都能看明白,不明白的可以参考一下MySQL提供的有关C语言API部分文档源码天空,各个函数都有详细说明,有时间我整理一份常用的API说明出来。

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。