当前位置:Gxlcms > 数据库问题 > linux环境下写C++操作mysql(一)

linux环境下写C++操作mysql(一)

时间:2021-07-01 10:21:17 帮助过:3人阅读

**************** connect.cpp g++ connect.cpp -o connect -I /usr/include/mysql/ -L /usr/lib/mysql/ -lmysqlclient ****************/ #include<stdio.h> #include<string.h> #include<stdlib.h> #include"mysql.h" class CMysqlInterface { public: CMysqlInterface(); ~CMysqlInterface(); void mysqlLibInit(); void mysqlLibDestroy(); int Connect(); int Close(); private: MYSQL *m_mysqlPtr; }; int main() { printf("version 1.1\n"); int iRet = -1; CMysqlInterface MysqlObj; iRet = MysqlObj.Connect(); if(0 == iRet) { printf("mysql_real_connect success\n"); } else { printf("mysql_real_connect failed\n"); } return 0; } CMysqlInterface::CMysqlInterface() { printf("CMysqlInterface\n"); m_mysqlPtr = NULL; m_mysqlPtr = mysql_init(NULL); } CMysqlInterface::~CMysqlInterface() { Close(); } int CMysqlInterface::Close() { int iRet = 0; if(NULL != m_mysqlPtr) { mysql_close(m_mysqlPtr); m_mysqlPtr = NULL; } return iRet; } void CMysqlInterface::mysqlLibDestroy() { mysql_library_end(); } int CMysqlInterface::Connect() { printf("Connect\n"); int iRet = -1; m_mysqlPtr = mysql_real_connect(m_mysqlPtr,"localhost","root","csql","child",0,NULL,0); if(m_mysqlPtr) { iRet = 0; } return iRet; }

 

exbot@ubuntu:~/wangqinghe/MySql/20190621/01$ g++ connect.cpp -o connect -I /usr/include/mysql/ -L /usr/lib/mysql/ -Imysqlclient

/tmp/cceJyiND.o:在函数‘CMysqlInterface::CMysqlInterface()’中:

connect.cpp:(.text+0xaf):对‘mysql_init’未定义的引用

/tmp/cceJyiND.o:在函数‘CMysqlInterface::Close()’中:

connect.cpp:(.text+0x100):对‘mysql_close’未定义的引用

/tmp/cceJyiND.o:在函数‘CMysqlInterface::mysqlLibDestroy()’中:

connect.cpp:(.text+0x121):对‘mysql_server_end’未定义的引用

/tmp/cceJyiND.o:在函数‘CMysqlInterface::Connect()’中:

connect.cpp:(.text+0x17c):对‘mysql_real_connect’未定义的引用

collect2: error: ld returned 1 exit status 

这个问题是因为连接命令出了错误 后面跟的应该是 -l 而不是-L

 

输出结果:

exbot@ubuntu:~/wangqinghe/MySql/20190621/02$ g++ connect.cpp -o connect -I /usr/include/mysql/ -L /usr/lib/mysql/ -lmysqlclient

exbot@ubuntu:~/wangqinghe/MySql/20190621/02$ ./connect

version 1.1

CMysqlInterface

Connect

mysql_real_connect success

 

linux环境下写C++操作mysql(一)

标签:string   lin   col   return   local   ext   cli   mys   ++   

人气教程排行