微智科技网
您的当前位置:首页MFC连接数据库代码实现

MFC连接数据库代码实现

来源:微智科技网


一:根据ER图的设计在数据库中生成对应的表项并且添加数据 userinfo用户信息表:

importlist进货单表:

二:创建ODBC数据源

打开控制面板—>管理工具——>ODBC数据源——>添加用户DSN选择SQL server——> 设置数据源名称为testsql——>服务器选择127.0.0.1——>通过sql身份认证连接服务器——>选择需要连接的数据库,这里选择master,测试成功;

三:界面设计

利用MFC创建一个单文档的应用程序; 添加两个对话框并设计界面如下:

进行对话框类的绑定,并且关联相关控件的变量;添加消息处理函数,编写代码:

登陆按钮代码实现:

void CTestDlg::OnOK() { // TODO: Add extra validation here //CDatabase dbs;

//dbs.OpenEx(_T(\"DSN=testsql;\"),CDatabase::noOdbcDialog);

//CString sql = _T(\"SELECT password FROM userinfo WHERE (userid =\"qiuzhen\");

CDatabase db;

db.Open(_T(\"testsql\"),FALSE,FALSE,_T(\"ODBC;\"),FALSE); CRecordset rs1(&db);// 构造记录集 UpdateData(TRUE); CString sqlstr; CString getpw;

sqlstr.Format(\"select * from userinfo where userid=%ld\rs1.Open(AFX_DB_USE_DEFAULT_TYPE,sqlstr); rs1.GetFieldValue(_T(\"password\"),getpw); int n=atoi(getpw); if(n==m_password) {

CCheckDlg dlg; dlg.DoModal();

} else

MessageBox(\"登陆失败!\"); db.Close();

//CDialog::OnOK(); }

添加进货单的代码实现:

void CCheckDlg::OnButton2() { // TODO: Add your control notification handler code here CDatabase db;

db.Open(_T(\"testsql\"),FALSE,FALSE,_T(\"ODBC;\"),FALSE);

// CString sql = _T(\"USE Test01 INSERT UserInfo(UserID,UserName) VALUES(\" 123, 'Bob')); CString sql; sql.Format(\"INSERT INTO importlist(number,date,money,type) values('0400','2012-06-03 12:30:00.000','5000','daily')\"); db.ExecuteSQL(sql); MessageBox(\"添加成功!\"); db.Close(); }

四:部分功能实现 调试运行MFC程序: 输入用户名密码:

获取登陆SQL权限:

进入普通管理员功能界面

店家添加进货单按钮: 再次验证身份

查看添加后的进货单情况:

基本代码实现了,其余功能还有待完善!

因篇幅问题不能全部显示,请点此查看更多更全内容