学生管理系统中,修改密码点击确定后:连接占线导致另一个hstmt

monkeyfly007 2015-07-08 07:14:53
我在做一个课程设计,学生成绩管理系统可是为什么会出现这个问题?在修改密码界面,点击确定时就弹出这个错误窗口,不知道怎么回事。(是不是没有释放对象还是?问题见代码[User]部分)

void CMyDialog::OnOK() //用户登录界面,确定按钮
{
// TODO: Add extra validation here
CString Username,Password;
m_username.GetWindowText(Username);
m_password.GetWindowText(Password);
if(!m_database.IsOpen())
{
if(m_database.Open(_T("student")))
{
m_recordset.m_pDatabase=&m_database;
CString strSQL;
strSQL.Format("select * from [User] where User_name='%s' and User_password='%s'",Username,Password);
m_recordset.Open(CRecordset::forwardOnly,strSQL);
if(m_recordset.GetRecordCount()==0)
{
MessageBox("用户名或密码错误!","错误!",MB_OK|MB_ICONWARNING);
m_password.SetWindowText("");
m_password.SetFocus();
}
else
{
//m_recordset.GetFieldValue("");
CDialog::OnOK();
}
}
m_recordset.Close();
m_database.Close();
}
else
{
MessageBox("不能打开数据库!");
}
//CDialog::OnOK();
}

void CPasswordDlg::OnOK() //修改密码界面,确定按钮
{
// TODO: Add extra validation here
CString Username,Password,Newpassword,Confirmpassword;
m_username.GetWindowText(Username);
m_password.GetWindowText(Password);
m_new.GetWindowText(Newpassword);
m_confirm.GetWindowText(Confirmpassword);

CDatabase m_database;
CRecordset m_recordset;
if(Newpassword.IsEmpty()||Confirmpassword.IsEmpty())
{
MessageBox("密码不能为空!");
}
else
{
if(Newpassword!=Confirmpassword)
{
MessageBox("两次密码不一致,请重新输入密码");
m_new.SetWindowText("");
m_confirm.SetWindowText("");
m_new.SetFocus();
}
else
{
if(!m_database.IsOpen())
{
if(m_database.Open(_T("student")))
{
m_recordset.m_pDatabase=&m_database;
CString strSQL;
strSQL.Format("select * from [User] where User_name='%s' and User_password='%s'",Username,Password);
m_recordset.Open(CRecordset::forwardOnly,strSQL);
if(m_recordset.GetRecordCount()==0)
{
MessageBox("用户名或密码错误!","错误!",MB_OK|MB_ICONWARNING);
m_password.SetWindowText("");
m_new.SetWindowText("");
m_confirm.SetWindowText("");
m_password.SetFocus();
}
else
{
strSQL.Format("update [User] set User_password='%s' where User_name='%s'",Newpassword,Username);
m_database.ExecuteSQL(strSQL);
MessageBox("修改密码成功");
CDialog::OnOK();
}
m_recordset.Close();
m_database.Close();
}
else
{
MessageBox("不能打开数据库!");
}
}
}
}
}
...全文
184 回复 打赏 收藏 举报
写回复
用AI写文章
回复
切换为时间正序
请发表友善的回复…
发表回复
内容概要:本文围绕掺铒光纤放大器(EDFA)的分析模型展开深入的模拟研究,重点在于利用Matlab代码实现EDFA工作过程的数值仿真,涵盖其增益特性、噪声系数以及在不同泵浦功率和波长条件下的性能表现。研究通过建立基于速率方程和传输方程的物理模型,精确描述铒离子的能级跃迁、自发辐射、受激辐射及吸收等核心物理机制,进而构建可用于光通信系统级仿真的EDFA模块。该模型不仅能够准确预测单级EDFA的输出光谱和增益平坦度,还支持对多级放大链路的级联效应进行分析与优化,具备良好的实用性、灵活性和可扩展性,为光通信系统的设计与性能评估提供了可靠的理论依据和工具支持。; 适合人群:具备一定光学通信基础知识和Matlab编程能力的研究生或科研人员,尤其适用于从事光纤通信系统仿真、光器件建模与性能优化等相关领域的工程技术人员。; 使用场景及目标:①用于高校及科研机构中关于光放大器原理的教学演示与科研分析;②支撑长距离、大容量光纤传输系统中多级EDFA链路的性能预测、噪声累积分析与优化设计;③作为典型有源光器件建模的学习案例,帮助理解复杂光电器件的数值仿真方法与物理机制。; 阅读建议:建议读者结合光通信相关理论知识,仔细研读模型的数学推导过程,并动手运行与调试所提供的Matlab代码,深入探究泵浦方式、光纤长度、掺杂浓度等关键参数对EDFA性能的影响规律,进一步可尝试将该模型集成至更大规模的光网络仿真平台中进行联合系统分析。

22,298

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server 疑难问题
社区管理员
  • 疑难问题社区
  • 尘觉
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧