#include "mydb.h"
CMyDB::CMyDB() //数据库放在构造函数中,可以不用手动调用初始化,编译器自动调
{
connection = mysql_init(NULL); //初始化连接数据库变量
if(connection == NULL)
{
perror("mysql_init");
exit(1);
}
}
CMyDB::~CMyDB() //数据库放在析构函数中,结束时自动关闭
{
if(connection != NULL) //关闭初始化连接数据库变量
{
mysql_close(connection); //关闭数据库链接
}
}
//初始化数据库 数据库连接 string server_host 定义string类 server_host.c_str() string类的内容
bool CMyDB::initDB(string server_host , string user, string password , string db_name )
{
//初始化一个数据库句柄
connection = mysql_init(NULL);
//运用mysql_real_connect函数实现数据库的连接
connection =mysql_real_connect(connection , server_host.c_str() , user.c_str() , password.c_str() , db_name.c_str() ,0,NULL,0);
if(connection ==NULL )
{
cout<<"connect error"<<endl;
return 0;
}
return true;
}
//执行SQL语句
bool CMyDB::executeSQL(string sql_str)
{
//设置字符集 中文输出
mysql_set_character_set(connection,"utf8");
//发送SQL语句,可以是SELECT ,INSERT,UPDATE 等SQL语句
if(mysql_query(connection, sql_str.c_str()))
{
printf("Error making query: %s\n" , mysql_error(connection));
exit(1);
}
/* else
{
//初始化逐行的结果集检索
res = mysql_store_result(connection);
//char *Name;
//char *PassWord;
while((row=mysql_fetch_row(res))!=NULL) //调用完返回行row(行)
{
cout<<row[0]<<'\t' <<row[1]<<'\t' <<row[2] <<endl; //每列的信息
if(UserName==row[1])
cout<<"验证通过" <<endl;
}
//释放结果集使用的内存
mysql_free_result(res);
}*/
return true;
}
/*bool CMyDB::execute_Insert_SQL(string insert_sql_str)
{
//设置字符集 中文输出
mysql_set_character_set(connection,"utf8");
//发送SQL语句,INSERT
if(mysql_query(connection, insert_sql_str.c_str()))
{
printf("Error making query: %s\n" , mysql_error(connection));
exit(1);
}
return true;
}*/
评论0
最新资源