代码:
#include
#include
#include "/usr/local/include/mysql/mysql.h" //安装的mysql的头文件所在的位置
using namespace std;
string host="数据库地址";
string user="用户名";
string pwd="密码";
string dbname="数据库";
string sql="查询语句";
unsigned int port=3309;#端口号
int status;
int main(){
MYSQL *mysql;
mysql=mysql_init(0);
MYSQL_RES *result;
MYSQL_ROW row;
if(mysql_real_connect(mysql,host.c_str(),user.c_str(),pwd.c_str(),dbname.c_str(),port,NULL,CLIENT_FOUND_ROWS)==NULL){
cout << "connect failure!" << endl;
return EXIT_FAILURE;
}else{
cout << "connect success!" << endl;
}
mysql_set_character_set(mysql,"gbk");
status=mysql_query(mysql,sql.c_str());
if(status !=0 ){
cout << "query failure!" << endl;
}
cout << "the status is :" << status << endl;
result=mysql_store_result(mysql);
while(row=mysql_fetch_row(result)){
cout << row[1] <<"|"<< row[2] << endl;
}
mysql_free_result(result);
mysql_close(mysql);
}
编译:
g++ -o test test.cpp -lmysqlclient -I/usr/local/include/mysql/ -L/usr/local/lib/mysql
后面的那些用来指定mysql安装的时候包含路径和库文件路径,具体与你机器上的mysql安装的路径有关。
Toad 于 2009-01-07 11:49:27发表:
努力
xcwen 于 2009-01-05 18:42:12发表:
程序中的代码:
sprintf( this->sqlstr, "select a from %s where userid=%u ",
this->get_table_name(userid),fieldname ,userid);
STD_QUERY_ONE_BEGIN(this-> sqlstr, USER_ID_NOFIND_ERR);
BIN_CPY_NEXT_FIELD(a,EMAIL_LEN);
STD_QUERY_ONE_END();
是不 是更可怕.
uzrcgunr 于 2009-01-05 17:01:42发表:
有难度啊