3.13.2 系统源程序操作说明
Sales数据库还原成功后,系统源程序中还有一些地方也需要读者注意。在本章系统设计上和第2章不同的是提供了让用户选择文件还原数据库,而不是默认还原。因此,在设计上内容难点比较大。这部分代码主要是两个方面的内容,需要读者在程序运行前完成以下代码的确认和修改:
在BOOL CHCDBApp::InitInstance()中,读者注意修改连接数据库代码中的服务器名称和SQL Server登录名和密码信息。如果修改不正确,很有可能会出现如图3-29所示的错误。由于连接不上数据库,会引起如图3-30所示的错误出现。
|
| (点击查看大图)图3-29 连接数据库失败界面1 |
|
| 图3-30 连接数据库失败界面2 |
下面给出需要读者修改的语句,这条语句是实现连接数据库Sales和数据库master,这样获取权限可以执行还原操作,读者需要修改斜体部分内容。
- if(!ConnectSql("driver={SQL Server};Server=HC\\MSSQL2008;Database=Sales"))
- {
- AfxMessageBox("数据库连接失败,检查数据库Sales是否存在,服务器名称和账号信息");
- return false;
- }
- //ConnectSql("driver={SQL Server};Server=HC\\MSSQL2008;Database=Sales;UID=sa;PWD=");
- if(!ConnectMaster("driver={SQL Server};Server=HC\\MSSQL2008;Database=master"))
- {
- AfxMessageBox("数据库连接失败,请检查服务器名称和账号信息");
- return false;
- }
- //ConnectMaster("driver={SQL Server};Server=HC\\MSSQL2008; Database=master; UID=sa; PWD=") ;
在ConnectSql()函数中笔者采用的是Windows身份验证模式连接服务器,登录名和密码使用使用默认的系统管理员账号。读者需要把"HC\\MSSQL2008"修改为自己的服务器名称。如果采用SQL Server身份验证连接服务器,需要添加UID和PWD信息。同时,读者需要注意自己的sa账户的密码。在ConnectMaster()函数和ConnectSql()函数中的设置方法一样,就不再重复描述了。
在void CRESTOREDLG::OnButton3()中,主要实现断开当前连接的数据库HCDB,还原后再重新连接。读者也要注意修改斜体部分内容。
- void CRESTOREDLG::OnButton3()
- {
- //……
- theApp.ConnectSql("driver={SQL Server};Server=HC\\MSSQL2008;Database=Sales");
- }
另外,读者如果需要还原数据库,一定要耐心等待1分钟的时间,因为断开当前连接的数据库进程,再重新连接需要一定的时间缓冲,界面如图3-31所示。
|
| 图3-31 正在还原界面 |
还原成功后给出提示信息,界面如图3-32所示。
|
| 图3-32 还原数据库成功信息界面 |
单击【确定】按钮,弹出登录界面,如图3-33所示,读者可输入账号信息登录。
|
| 图3-33 还原数据库成功信息界面 |
读者结合自己的数据库系统信息,按照上面的两点说明修改及界面演示,一定能成功运行本系统。