用C语言怎么实现与数据库的连接

用C语言怎么实现与数据库的连接,第1张

#include<mysql/mysql.h>

#include<stdio.h>

intmain()

{

MYSQL*conn

MYSQL_RES*res

MYSQL_ROWrow

char*server="localhost"//本地连接

char*user="root"//

char*password="525215980"//mysql密码

char*database="student"//数据库

char*query="select*fromclass"//需要查询的语句

intt,r

conn=mysql_init(NULL)

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

{

printf("Errorconnectingtodatabase:%s\n",mysql_error(conn))

}else{

printf("Connected...\n")

}

t=mysql_query(conn,query)

if(t)

{

printf("Errormakingquery:%s\n",mysql_error(conn))

}else{

printf("Querymade...\n")

res=mysql_use_result(conn)

if(res)

{

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

{

//printf("num=%d\n",mysql_num_fields(res))//列数

for(t=0t<mysql_num_fields(res)t++)

printf("%8s",row[t])

printf("\n")

}

}

mysql_free_result(res)

}

mysql_close(conn)

return0

}

扩展资料

C语言使用注意事项:

1、指针是c语言的灵魂,一定要灵活的使用它:

(1)、指针的声明,创建,赋值,销毁等

(2)、指针的类型转换,传参,回调等

2、递归调用也会经常用到:

(1)、递归遍历树结构

(2)、递归搜索

连接代码如下:

int main()

{

EXEC SQL BEGIN DECLARE SECTION

char oc_passwd[101] /*数据库密码*/

char oc_userid[101] /*数据库用户名*/

char oc_dbname[101] /*数据库名*/

char oc_coad[101]

EXEC SQL END DECLARE SECTION

memset(oc_passwd, 0x00, sizeof(oc_passwd))

memset(oc_userid, 0x00, sizeof(oc_userid))

memset(oc_dbname, 0x00, sizeof(oc_dbname))

/*取数据库用户名*/

strcpy(oc_userid, "userid")

/*取数据库用户密码*/

strcpy(oc_passwd, "passwd")

/*取数据库名*/

strcpy(oc_dbname, "dbname")

EXEC SQL CONNECT :oc_userid

IDENTIFIED BY :oc_passwd

USING :oc_dbname

if (sqlca.sqlcode != 0)

{

printf("用户名[%s]密码[%s]数据库[%s]\n", oc_userid, oc_passwd, oc_dbname)

printf("连接数据库失败,sqlcode=%d\n", sqlca.sqlcode)

return -1

}

/*读table取coad字段*/

memset(oc_coad, 0x00, sizeof(oc_coad))

EXEC SQL SELECT coad

INTO :oc_coad

FROM table

WHERE 1=1

if (sqlca.sqlcode == NORECORD)

{

printf("查询无记录\n")

return -1

}

else if (sqlca.sqlcode != 0)

{

printf("查询失败,sqlcode=%d\n", sqlca.sqlcode)

return -1

}

return 0

}


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/sjk/6806453.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-03-28
下一篇 2023-03-28

发表评论

登录后才能评论

评论列表(0条)

保存