《【MSDN】《胖客户端应用程序演练》》由会员分享,可在线阅读,更多相关《【MSDN】《胖客户端应用程序演练》(13页珍藏版)》请在金锄头文库上搜索。
1、此文章已于0:39:59 2010-12-2发布到抚琴沐枫MSDNVisual Studio 入门胖客户端应用程序演练新建项目MFC应用程序,选择“单文档”类型;在“数据库支持”这一步选择“支持文件的数据库视图”,然后单击【数据源】 按钮,选择“SQLServer”项,如下图:3.点击【下一步】按钮,转至数据链接属性标签页,如下图:小结一、内容简概:通过MFC应用程序向导完成SQL数据库连接后,在程序中使用SQL查询 指令,将查询结果显示于列表中。实现平台:VS2008二、实现步骤及问题解决:1.2.这里的问题主要出现在“1、选择或输入服务器名称”这一项,即上图的A处。 主要原因:未在本机配置
2、数据服务器。在未配置服务器的情况下,此时若点击右侧的下拉箭头,或右侧的【刷新】,会 提示“错误枚举数据服务器”,如下图:而点击“3、在服务器上选择数据库(D):”右侧下拉箭头则提示SQLServer不存 在或拒绝访问”,如下图:下面来配置数据服务器:a)安装三个工具:SQLServer2005配置管理器、外围应用配置器和SQL Server Management Studio,前两个叫在VS2008安装程序中找,第三个 需要另外下载安装,下载地址: nloads/details.aspx?FamilvlD 二 C243A5AE-4BDl4E3D94B85A0F62BF7796&disp
3、lavla ng二zhc n&displavla ng=enb)配置SQL Server2005外围应用配置器,开启SQL Server2005远程连接 功能:a Microsoft SQL Server 2005 “配置工具” “SQLServer 外围应用配置器”,在程序界面选择“服务和连接的外围应用配置器”, 如下图:菟功能的外围应用配置器然后选择DataBase Engine节点下的“远程连接”,再选择“本 地连接和远程连接”,选中“同时使用TCP/IP和named pipes”,点击确定 后重启数据库服务,如下图:选择鉅件 然后配置页服务和连接):曰jDatabase En(in禁用
4、此服务,除菲您的应用程序要使用它.*服务远稈连接二 4 刃L Server Browser巌务服务名称 ): MSSQUSQLEXPRESS显不名称Q):SQL Server (SQLEXPRESS)说明:提供数据的存赭、处理和受控访问,并提供快速的事务处理.启动类型:自动q服务状态(V):正在运行启动L停止L皙停1恢复 ISQL Server 2005 Surface Area Configuration有助干泯护SQL Server仅启用应用程序所用的JR务和连接类型.禁用未使用的服务和连接可减少外国应用,有助于保护服务器.有关獸认设 5 评参阅孔肋.It认 1S况下 SQL Server
5、 2005 Express Edition、Evaluation Edition 和 Developer Edition只允许本地客尸端连接.此外,Enterprise Edition、 Standard Edition 和 Workgroup Edition 也可通过 TCP/IP 来侦听远程客戶 適连接.使用下面的遶项可以.咗? SQL Server侦毎传人客P请屋枝崩甬的 议.TCP/IP是named pipes上的首选协议,因为它需要捧防火墙打开的進口 较少.O仅限本地连接匕)本地连摄和远程连接QR)O仅使用TCP/IP d)g 仅使用 luft gs(H) 同时使用 TCP/IP 和
6、 named pipes $) 确定 取消 应用 I帮助01)点击【停止】后再点击【启动】,重启数据库服务.c) 设置SQL Server的端口号u Microsoft SQL Server 2005J, “配置工具” “SQLServer配置管理器”,在SQL Server Configuration Manager管理器中屐开 SQL Server 2005网络配置- 单击下面的SQLEXPRESS协议 在右侧 的窗口中,右键单击”TCP/P项,选捋雇性”(或左键双击) 打开TCP/IP属性”窗口 单击“IP地址”选项卡- 将所有IP地址下而的 TCP Port*值设置成1433o如下图:
7、d)确保已开启SQL Server服务e)把登陆设置改为SQL Server和Windows身份验证模式:打开SQL Server Management Studio管理器,在“对象资源管理器” 窗口中的服务器上面点击右键然后查看“属性”,在安全选项里面 对服务身份验证选择“SQLServer和Windows身份验证模式,如 下图:f) 修改SQL Server sa的密码:在上图的“对象资源管理器”窗口中,点击“安全性”,双击右侧窗口中的“登录名”,如下图:双击忖象资憑管理器Q X绥忠旦一a r- J PC-201011141420SQLEXPRESS (SQL Server s _T务器对
8、象ffi匚i复制s丄笞理再双击sa账号,登录名PC-201011141420SQLEX?RESS安全性 登录名名称 |创建时间BUILTINAdmini s tr at or s 2010-11-14 jBUILTINWstrs 2010-11-14 Ant authoritysystem 2010-11-14 & PC-201011141420Adini strator 2010-11-14 您PC201011141420SQLStrvAddProperty Q)BPROP_CANFETC pPropSet-AddProperty (DBPROPZcANSCRO: / pPr opS e t
9、- AddPr op er t y (DBPROP JSequentiCDataSource db;ULT In : 安全问题:连接字符串可能包含密玛.rror申/信息.诸在查看芫此连接字符串并找到所有与安全 /有关的问题后移除#error.可能需要将此巒码存 储为瓦他格式或使用苴他的用戶身份验证8. 按MSDN中的步骤一步步完成,最后编译链接缺无法通过。问题在XXXView中添 加的那段代码。MSDN中的代码:显示查询结果1. 在类視ST中,展开项目节点、并双击CMyProjectViev类的OnlnitialUpdate方法.2. 在此函数中的所有现有代码之后 忝加下面的代码:HRESUL
10、T hr S_0K;TCHAR szAuthor?80J;CHyProjectSe匕 &dbset 二 GetDocument()m MyPzojectSet; db_couiiaand (naiierrcmdrrz source_name=rrdbsetrrz hresult=hr)问题代码SELECT aulnajiie (b indto JszAuthor) FROM AUTHORS);while(cmd.MoveNext() = S_0K) a_DataList.Insertstring(-1, szAuthor);上图红框中的代码更正为:db comma nd (commemd二SEL ECT ciu lncimc (Zbindto szAuthor) FROM AUTHORS, namc=/zcmd,/, source_name=z,dbset,z, hrcsult二hr);9. 编译链接成功,运行程序显示如下:戌无标题- test SQL