我是 C++ 上的 mysql 新手,之前在 PAWN 上做过,效果很好,但现在我遇到了问题。我正在尝试从 mysql 数据库中获取密码,稍后将执行其余代码并且我得到一个十六进制代码?如果这是对的?这是我得到的一个例子:0x59fcb0。当我重新启动程序/重新编译它时,它总是会发生变化。我试图用谷歌搜索我的问题,但没有得到任何接近。所以我唯一想做的就是获取一个字段的值并将其存储为一个变量......这是我的代码:
#include <stdlib.h>
#include <stdio.h>
#include <stdio.h>
#include <iostream>
#include <string>
#include <windows.h>
#include <mysql/mysql.h>
using namespace std;
static char *opt_host_name = "host"; /* HOST */
static char *opt_user_name = "user"; /* USERNAME */
static char *opt_password = "pass"; /* PASSWORD */
static unsigned int opt_port_num = 3306; /* PORT */
static char *opt_socket_name = NULL; /* SOCKET NAME, DO NOT CHANGE */
static char *opt_db_name = "database name"; /* DATABASE NAME */
static unsigned int opt_flags = 0; /* CONNECTION FLAGS, DO NOT CHANGE */
int main ()
{
MYSQL *conn; /* pointer to connection handler */
MYSQL_RES *res; /* holds the result set */
MYSQL_ROW row;
/* INITIALIZE CONNECTION HANDLER, DO NOT CHANGE */
conn = mysql_init (NULL);
/* THIS CONNECTS TO SERVER, DO NOT CHANGE ANYTHING HERE */
mysql_real_connect (conn, opt_host_name, opt_user_name, opt_password,
opt_db_name, opt_port_num, opt_socket_name, opt_flags);
/* show tables in the database (test for errors also) */
mysql_query(conn, "SELECT Password FROM Users WHERE Name = 'MY_NICKNAME'");
res = mysql_store_result(conn);
cout << "Password is: \n";
cout << res << endl;
/* disconnect from server */
mysql_close (conn);
system("pause");
return 0;
}
/* end main function */
另外,我更改了 mysql 数据库连接选项。