linux环境下写C++操作mysql
Posted wanghao-boke
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了linux环境下写C++操作mysql相关的知识,希望对你有一定的参考价值。
/***************** 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;
[email protected]:~/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
输出结果:
[email protected]:~/wangqinghe/MySql/20190621/02$ g++ connect.cpp -o connect -I /usr/include/mysql/ -L /usr/lib/mysql/ -lmysqlclient
[email protected]:~/wangqinghe/MySql/20190621/02$ ./connect
version 1.1
CMysqlInterface
Connect
mysql_real_connect success
以上是关于linux环境下写C++操作mysql的主要内容,如果未能解决你的问题,请参考以下文章