MFC+MYSQL实现的登录对话框,求改。。。。。。

MYSQLmysql;MYSQL_RES*result;MYSQL_ROWrow;mysql_init(&mysql);chars[]="SETNAMES'GB2312'... MYSQL mysql; MYSQL_RES *result;
MYSQL_ROW row; mysql_init(&mysql);
char s[] = "SET NAMES 'GB2312'";
int real = mysql_real_query(&mysql,s,(UINT)strlen(s));
//if (real == 0){}
char sql[] = "select *from user";
real = mysql_real_query(&mysql, sql, (UINT)strlen(sql));
if (real == 0)
{
result = mysql_use_result(&mysql);
if (result != NULL)
{
row = mysql_fetch_row(result);
while (row != NULL)
{
if (m_username == CString(row[0]))
{
if (m_password == CString(row[1]))
{
CDialog::EndDialog(1);
}
else
{
MessageBox(_T("密码错误"), _T("登录界面"), MB_OK);
return;
}
}
row = mysql_fetch_row(result);
}
其中 user是表,含有username和password,m_username和m_password是edit控件的变量
展开
 我来答
小刺猬001
2016-07-14 · TA获得超过729个赞
知道小有建树答主
回答量:1087
采纳率:73%
帮助的人:276万
展开全部
你想改什么? 是报错还是优化?
报错的话麻烦把报错的提示信息贴出来。木有耐心看这些代码~
更多追问追答
追问
好吧,登录的问题解决了,但是不会写怎么把数据insert进数据库里,这是代码:
MYSQL mysql;
char sql[] = "insert into user values (m_username,m_password)";
mysql_query(&mysql,sql);
没有报错,但是也没有效果,应该是没输进mysql里
追答
inesrt代码错了。
因为user表可能有不只username password两个字段,所以前边最好限制一下 表 的字段名。
insert into user(username,password) values(m_username,m_password
)

我写插入语句一般习惯用 CString类型的sql,insert语句用Format格式化。
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式