网站首页 > 文章中心 > 其它

mysql怎么和c链接

作者:小编 更新时间:2023-09-26 11:15:05 浏览量:444人看过

如何用C语言连接MYSQL数据库

①.、配置ODBC数据源.

对于1、配置数据源,配置完以后就可以编程操作数据库了.

#includewindows.h

#includesql.h

#includesqlext.h

void

main()

{

HENV

henv;

//环境句柄

HDBC

hdbc;

//数据源句柄

HSTMT

hstmt;

//执行语句句柄

unsigned

char

datasource[]="数据源名称";

//即源中设置的源名称

user[]=

"用户名";

//数据库的帐户名

pwd[]=

"密码";

//数据库的密码

search[]="select

xm

from

stu

where

xh=0";

SQLRETURN

retcode;

//记录各SQL函数的返回情况

//

分配环境句柄

retcode=

SQLAllocEnv(henv);

等介于

SQLAllocHandle(SQL_HANDLE_ENV,

SQL_NULL

,

henv);

SQLSetEnvAttr(henv,

SQL_ATTR_ODBC_VERSION,

0);

分配连接句柄

SQLAllocConnect(henv,hdbc);

SQLAllocHandle(SQL_HANDLE_DBC,

henv,

hdbc);

//设置连接属性,登录超时为*rgbValue秒(可以没有)

SQLSetConnectAttr(hdbc,

SQL_LOGIN_TIMEOUT,

(SQLPOINTER)(rgbValue),

//直接连接数据源

如果是windows身份验证,第第二段:三参数可以是

C语言怎样连接mysql数据库

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

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

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

#include stdio.h

#include time.h

#include string.h

#include winsock.h

void main(){

MYSQL *conn;

MYSQL_RES *res;

MYSQL_ROW row;

char *server ="localhost";

char *user ="root";

char *password="";

char *database="test";

conn=mysql_init(NULL);

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

fprintf(stderr,"%s\n",mysql_error(conn));

exit(1);

}

if(mysql_query(conn,sql)){

res=mysql_use_result(conn);

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

mysql_free_result(res);

mysql_close(conn);

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

#include windows.h

#endif

#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 ; //存放一行查询结果的字符串数组

//初始化

mysql_init(mysql);

//连接数据库

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

fprintf(stderr,"Couldn't connect to engine!\n%s\n\n",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 %s\n", mysql_error(handle));

printf("number of fields returned: %d\n",mysql_num_fields(result));

//读取结果集的内容

while (row = mysql_fetch_row(result)) {

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

//释放结果集

mysql_free_result(result);

//关闭数据库连接

mysql_close(handle);

system("PAUSE");

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

return 0;

以上就是土嘎嘎小编为大家整理的mysql怎么和c链接相关主题介绍,如果您觉得小编更新的文章只要能对粉丝们有用,就是我们最大的鼓励和动力,不要忘记讲本站分享给您身边的朋友哦!!

版权声明:倡导尊重与保护知识产权。未经许可,任何人不得复制、转载、或以其他方式使用本站《原创》内容,违者将追究其法律责任。本站文章内容,部分图片来源于网络,如有侵权,请联系我们修改或者删除处理。

编辑推荐

热门文章