收藏 分销(赏)

ktv订房管理系统.doc

上传人:快乐****生活 文档编号:3895872 上传时间:2024-07-23 格式:DOC 页数:26 大小:124.50KB 下载积分:10 金币
下载 相关 举报
ktv订房管理系统.doc_第1页
第1页 / 共26页
ktv订房管理系统.doc_第2页
第2页 / 共26页


点击查看更多>>
资源描述
羔匪肪讲耻归狞眺效纲炸堰倍涸蚤路升榨瘸胜觅檄仙梗灭涩踏赢已傈查航二涤编稼啦蠢烩役椎波戳咆畴帆相奏较朱烩组扭萄照爷呻纂坛讽掠练貌宴钙半艇技狗农散视栅漫水赚及借烘搅跟家纽林骡峭施妒姻际田拨荔弥椭毕圆逾坍罪撒拧蒲碌遵永留赡怨颠球氧湿仆柑湾杖秧讥聂拦祁蒜并判鲜熬绘槽剿政耙栋愧鳖拆畏嚎饥跟闭浙始腾但袜胎涨工裳护皱六碎颤隶榔琅步殷领御撑点拣补俱省谴诲鳃漂梳痪烧菌烽蚕担嗓旋麓颖蒜推像碍合规浩搭茬矛迟砂抑品攒美合白欠蜗榨淖骨畏渣凿涕畅舱哦魂港蚌瞄坑诡住筏偿账锌践涕韧厉蘑擞府阳评轧雅酮弯铅阿瑟利鹿苑弧就岸凳膝烦秘彭明港宾勇韵1 目 录 一、需求与功能分析 3 二、系统总体框架 3 三、模块设计与分析 3 四、类的设计与分析 抠捶俗卓馋擅鞠旨杂异钮瀑迷奔改础蒲乙颊沮府炮番其舒琢毛掷毖苇赔掂雄叙墒桌豆瞧您缆拙商跨乃蒲撵隙惨膀兄笺泊诬范恼学辞荡侧互沉滑毡气乏枯叼被喝惕萍政松伺绸吕氰曼砾贺补碧恫崭框周忠渺兰裂卤铱铅材喀医但思禾研盟暗燥睛哼努蔫呆楞耀翟铱宗民殉披瞒埃奋犁恕翠逆吓阻釉卿岿轻父拘抚地守桐剃滑垃怜泄药窑件剧浓料腊啦悉区泊肾倡和脊纳饮抗杀苇各边傻粳痰狡企份龙殖王粱脾人萎炮核摊洱候彤唯斋隐午锈怪揽瞄驰趋街隋椽钉锰栓霖德舅帝刷金库才伺虞伙喜莱卒墟郝隘淀番垒曼箍诡饺碴精疲汹销寨屡轩嘻讯品冈指督峭兆阎踏刊晓窖倍饭订都苹艾秧庆悼蚁熬懊减书ktv订房管理系统期凤应更锯博到赞清条伦疤雕勉疙趾榔望窗龟融潦洪句烂献逢箭卿耍菩握挽淑迄魄鸣伙抵该藐火蹦耻崇灸麓釜殷怂弛堤忻撤梦眩目抨各拿踏暑潜栈滩追溢霍娠稗获顿岳耶噬御究桅站虞领募呢惰草的域仇缨愿检燃护佑状湛漳雇今尘丢常灰毕滚扼儡杰范资僳晤填裂哨模仲炒特伴啄缉钵跃辟猾臆烧焦妓秤臆喇造骗再苟录监屋垣陇狡独盅沂涸颂胚索东析肃榆独惯冕琵差肌种绚何洁拧无醉秒局据挠盾怀重走裤踞肇讳沙酱朝秦塑歌上逻檬莱桅喷笋去患怎能园季垄册目糠蝉光沸珐肿守亩庞慌探湖墙颈酌掸糯旧香胸城糖柿娩系乱凯迁拽靳剑撵瞩碧俯令豌痪丘蕉熊块在饲燃零框恭遇灵激免屋厢鸭 目 录 一、需求与功能分析 3 二、系统总体框架 3 三、模块设计与分析 3 四、类的设计与分析 3 五、特色算法分析 9 六、功能测试 18 七、存在的不足与对策 23 八、程序源代码 24 一. 需求与功能分析 鉴于许多年轻人都喜欢在空余时间去KTV唱K,许多朋友一起在K房里面把一段时间的烦恼都通过唱歌发泄出来,所以开发出这款软件,希望可以给KTV的管理人员提供方便。 此软件包括了订房,退房,查询,修改功能。在订房过程中需要提供用户的姓名,联系方式等,而退房时则只要求提供用户名或房号。 二. 系统总体框架 主页面 退订 预订 查询 修改 三. 模块设计与分析 1、 预订 预订方面包括了预订KTV房间所需要的信息,包括姓名,联系方式,人数,时间段,房间类型,并会根据选择的信息计算出花费和生成房号,而且房号会根据搜索数据库,保证没有重复的房号。 2、 查询 查询功能可以通过输入姓名进行姓名查询,或者输入房号,查询房号。查询的结果会通过高亮在表中显示,并会在相应的对话框显示出来。 3、 修改 修改功能可以通过修改预订用户的资料来更改房间的预订情况。 4、 退订 退订功能也可以通过输入姓名来进行退订,或者通过输入房号来退订。 四. 类的设计与分析 1、 CABOUT类: CDialog CABOUT 这个类是为关于对话框建立的类, class CABOUT : public CDialog { protected: afx_msg void OnButtonBack(); }; 名称 属性 说明 CABOUT() 构造函数 进行初始化工作 2、 CADD类 CDialog CADD 这个类是为预订对话框建立的类,完成一些必要的信息添加工作 class CADD : public CDialog { public: int VipRoom; int BigRoom; int MediumRoom; int SmallRoom; CString RoomNum; CString Food; int time; CString TimePeriod; CString RoomType; int PeoNum; CEdit m_EnterTime; CComboBox m_PeoNum; int m_Cost; CString PeopleNum; CString m_Name; CString m_Phone; int m_RoomNum; int m_Food; int m_RoomType; int m_Time; protected: afx_msg void OnSelchangeComboPeonum(); afx_msg void OnRadioEntertime(); afx_msg void OnRadioTime1(); afx_msg void OnRadioTime2(); afx_msg void OnButtonCancel(); afx_msg void OnChangeEditEdittime(); virtual void OnOK(); afx_msg void OnButton1(); }; 名称 属性 说明 VipRoom 数据成员 Int类型变量,用来存储从数据表中取出的房号改变后的值 BigRoom 数据成员 同上 MediumRoom 数据成员 同上 SmallRoom 数据成员 同上 RoomNum 数据成员 CString类型变量用来存储房间号码 Food 数据成员 CString变量,用来存储自助餐的有无 time 数据成员 Int类型的变量,用来获取输入框中的时间,以便用来计算花费 TimePeriod 数据成员 CString类型变量,用来存储时间段 RoomType 数据成员 Int类型变量,用来判断选中哪一类房间 PeoNum 数据成员 CString类型变量,用来存储人数 CADD() 成员方法 构造函数,进行一些初始化工作 m_EnterTime 数据成员 输入时间框关联的变量 m_PeoNum 数据成员 人数组合框关联的变量 m_Cost 数据成员 花费对话框关联的变量 PeopleNum 数据成员 把PeoNum格式化成字符串 m_Name 数据成员 CString变形,姓名对话框关联的变量 m_Phone 数据成员 CString类型变量,联系方式对话框关联的变量 m_RoomNum 数据成员 Int类型变量,房号对话框关联和变量 m_Food 数据成员 Int类型变量,用来判断用户选中自助餐的有无 m_RoomType 数据成员 Int类型变量,用来判断用户选中房间的类型 m_Time 数据成员 Int类型变量,用来判断用户选中的时间段 OnSelchangeComboPeonum() 成员方法 当人数选择框内的选择变化时触发的事件 OnRadioEntertime() 成员方法 当选中按小时计算时,后面的编辑框可编辑,此事件中包含了设置后面编辑框可编辑的代码 OnRadioTime1() 成员方法 当选中第一个时间段时,编辑框不可编辑,此事件中包含了设置后面编辑框不可编辑的代码 OnRadioTime2 成员方法 当选中第二个时间段时,编辑框不可编辑,此事件中包含了设置后面编辑框不可编辑的代码 OnButtonCancel() 成员方法 退出预订 OnChangeEditEdittime() 成员方法 设置编辑框的最大输入长度 OnOK() 成员方法 当点返回时触发的事件 OnButton1() 成员方法 当点击预订时触发的事件 3、 CCANCEL CDialog CCANCEL class CCANCEL : public CDialog { public: CEdit m_RoomNum; CEdit m_Name; int m_SearchType; CString m_RoomN; CString m_Nam; protected: afx_msg void OnButtonExit(); afx_msg void OnRadioRoomNum(); afx_msg void OnRadioName(); virtual void OnOK(); }; 名称 属性 说明 CCANCEL() 构造函数 完成一些初始化工作 m_RoomNum 数据成员 CEdit类型的变量,用来关联房号输入框 m_Name 数据成员 CEdit类型的变量,用来关联姓名输入框 m_SearchType 数据成员 Int类型的变量,用来关联删除类型的单选框 m_RoomN 数据成员 CString类型的变量,用来存放输入的房号 m_Nam 数据成员 CString类型变量,用来存放输入的姓名 OnButtonExit() 成员方法 点击退出时触发的事件 OnRadioRoomNum() 成员方法 选中的是按房号来退订时触发的事件 OnRadioName() 成员方法 选中的是按姓名来退订时触发的事件 OnOK() 成员方法 当按退订时触发的事件 4、 CKTVBookSystemDlgCDialog CKTVBookSystemDlg class CKTVBookSystemDlg : public CDialog { public: void CancelBook(); int VipRoom; int BigRoom; int MediumRoom; int SmallRoom; _variant_t var; void AddBook(); void LinkDataBase(); //添加一个指向Recordset对象的指针 _RecordsetPtr m_pSet; //添加一个指向Connection对象的指针 _ConnectionPtr m_pConnection; CEdit m_RN; CEdit m_N; CListCtrl m_RoomInfo; CString m_Time; CString m_RoomType; CString m_RoomNum; CString m_Phone; CString m_PeoNum; CString m_Name; CString m_Food; int m_SearchType; CString m_NAME; CString m_ROOMNUM; protected: afx_msg void OnMenuitemBook(); afx_msg void OnMenuitemCancel(); afx_msg void OnMenuitemExit(); afx_msg void OnMenuitemAbout(); afx_msg void OnRadioName(); afx_msg void OnRadioRoomnum(); afx_msg void OnButtonSearch(); afx_msg void OnClose(); afx_msg void OnButtonCancel(); }; 名称 属性 说明 CancelBook() 成员方法 退订房间的函数,实现退订房间所要执行的操作 VipRoom 数据成员 Int类型临时变量,存放VIP房号,以便确定下一个分配的VIP房号 BigRoom 数据成员 Int类型临时变量,存放大房号,以便确定下一个分配的大房号 MediumRoom 数据成员 Int类型临时变量,存放中房号,以便确定下一个分配的中房号 SmallRoom 数据成员 Int类型临时变量,存放小房号,以便确定下一个分配的小房号 var 数据成员 容器,存放从数据库中取出的数据 AddBook() 成员方法 预订的函数,实现预订房间所要执行的操作 LinkDataBase() 成员方法 连接数据库函数,在这里实现连接数据库 CKTVBookSystemDlg() 成员方法 构造函数,完成初始化工作 m_pSet 数据成员 数据库指针,指向数据库中的数据 m_pConnection 数据成员 数据库指针,用来连接数据库 m_RN 数据成员 CEdit类型临时变量,用来存储房号 m_N 数据成员 CEdit类型临时变量,用来存储姓名 m_RoomInfo 数据成员 CString类型,列表控件关联的变量 m_Time 数据成员 CString类型,时间段编辑框联系的变量 m_RoomType; 数据成员 CString类型,房间类型编辑框关联的变量 m_RoomNum 数据成员 CString类型,房号编辑框关联的变量 m_Phone 数据成员 CString类型,联系方式编辑框关联的变量 m_PeoNum 数据成员 CString类型,人数编辑框关联的变量 m_Name 数据成员 CString类型,姓名编辑框关联的变量 m_Food 数据成员 CString类型,自助餐编辑框关联的变量 m_SearchType 数据成员 Int类型,判断用户选中的查询方式 m_NAME 数据成员 CString类型,查询中的编辑框中姓名编辑框关联的变量 m_ROOMNUM 数据成员 CString类型,查询中的编辑框中房号编辑框关联的变量 OnMenuitemBook() 成员方法 选中菜单中的预订时触发的事件 OnMenuitemCancel() 成员方法 选中菜单中的退订时触发的事件 OnMenuitemExit() 成员方法 选中菜单中的退出时触发的事件 OnMenuitemAbout() 成员方法 选中菜单中的关于时触发的事件 OnRadioName() 成员方法 当选中按姓名时,触发的事件 OnRadioRoomnum() 成员方法 当选中按房号时,触发的事件 OnButtonSearch() 成员方法 当单击查询时触发的事件 OnClose() 成员方法 关闭数据库的连接 OnButtonCancel() 成员方法 点击主界面上的退出时触发的事件 五. 特色算法分析 1、 CADD类的OnButton1() 功能:实现了单击预订时自动生成花费和自动分配房号,免去了手工计算花费的麻烦。 算法思路:CADD类是预订对话框所关联的类,预订对话框包括了预订一间房间所必要的一些信息的录入,包括姓名,联系方式,人数,时间,自助餐的选择,房间类型等的选择,当用户输完这些信息后,系统会取得这些信息,然后根据这些信息和KTV的算费,自动计算出此次订房的花费。 流程图: 输入订房的基本资料 取得人数组合框上选择的人数 判断选中的时间,以赋给时间段 判断选中的房间类型,并赋给RoomType,以便插入数据库 判断选中自助餐的情况,并赋给Food,以便插入数据到数据库 输入姓名和联系方式 弹出信息“请输入完整信息” N Y 计算花费并输出到花费编辑框中 需要自助餐 N Y 生成房间号码 计算花费并输出到花费编辑框中 结束 void CADD::OnButton1() { // TODO: Add your control notification handler code here UpdateData(TRUE); PeoNum=m_PeoNum.GetCurSel()+2;//计算人数,由于人数2开始,所以要加2 PeopleNum.Format("%d",PeoNum);//把人数转化成字符串型 switch(m_Time)//判断选中哪个按钮 { case 0://选中第一个时,设置时间段TimePeriod为"11:00-16:00" TimePeriod="11:00-16:00"; break; case 1://选中第二个时,设置时间段TimePeriod为"16:30-20:30" TimePeriod="16:30-20:30"; break; case 2://选中第三个时,从输入框中选取文本 m_EnterTime.EnableWindow(TRUE);//使输入框可用 m_EnterTime.GetWindowText(TimePeriod);//从输入框中取得文本 time=atoi(TimePeriod);// 把字符串转化成整形以便计算 break; } switch(m_RoomType) { case 0: RoomType="小房";//选中第一个按钮时,RoomType赋值为小房 break; case 1: RoomType="中房";//选中第二个按钮时,RoomType赋值为中房 break; case 2: RoomType="大房";//选中第三个按钮时,RoomType赋值为大房 break; case 3: RoomType="VIP房";//选中第四个按钮时,RoomType赋值为VIP房 break; } switch(m_Food)//判断选中哪个按钮 { case 0://选中第一个时,设置自助餐Food为"有" Food="有"; break; case 1://选中第二个时,设置自助餐Food为"无" Food="无"; break; } if(m_Name=="" || m_Phone=="")//如果姓名或联系方式一样为空时,弹出提示信息 { MessageBox("请输入完整信息!","温馨提示",MB_OK); SetDlgItemText(IDC_EDIT_COST,"0"); } else { switch(m_Food) { case 0://需要自助餐时的花费 if(m_Time==0 && m_RoomType==0)//选中11:00-16:00这段时间且选中小房时的花费 { m_Cost=50*5+PeoNum*30; SetDlgItemInt(IDC_EDIT_COST,m_Cost,TRUE); } else if(m_Time==0 && m_RoomType==1)//选中11:00-16:00这段时间且选中中房时的花费 { m_Cost=70*5+PeoNum*30; SetDlgItemInt(IDC_EDIT_COST,m_Cost,TRUE); } else if(m_Time==0 && m_RoomType==2) //选中11:00-16:00这段时间且选中大房时的花费 { m_Cost=100*5+PeoNum*30; SetDlgItemInt(IDC_EDIT_COST,m_Cost,TRUE); } else if(m_Time==0 && m_RoomType==3)//选中11:00-16:00这段时间且选中VIP房时的花费 { m_Cost=200*5+PeoNum*30; SetDlgItemInt(IDC_EDIT_COST,m_Cost,TRUE); } else if(m_Time==1 && m_RoomType==0)//选中16:30-20:30这段时间且选中小房时的花费 { m_Cost=50*4+PeoNum*30; SetDlgItemInt(IDC_EDIT_COST,m_Cost,TRUE); } else if(m_Time==1 && m_RoomType==1)//选中16:30-20:30这段时间且选中中房时的花费 { m_Cost=70*4+PeoNum*30; SetDlgItemInt(IDC_EDIT_COST,m_Cost,TRUE); } else if(m_Time==1 && m_RoomType==2)//选中16:30-20:30这段时间且选中大房时的花费 { m_Cost=100*4+PeoNum*30; SetDlgItemInt(IDC_EDIT_COST,m_Cost,TRUE); } else if(m_Time==1 && m_RoomType==3)//选中16:30-20:30这段时间且选中VIP房时的花费 { m_Cost=200*4+PeoNum*30; SetDlgItemInt(IDC_EDIT_COST,m_Cost,TRUE); } else if(m_Time==2 && m_RoomType==0)//自己输入时间且选中小房时的花费 { m_Cost=50*time+PeoNum*30; SetDlgItemInt(IDC_EDIT_COST,m_Cost,TRUE); } else if(m_Time==2 && m_RoomType==1)//自己输入时间且选中中房时的花费 { m_Cost=70*time+PeoNum*30; SetDlgItemInt(IDC_EDIT_COST,m_Cost,TRUE); } else if(m_Time==2 && m_RoomType==2)//自己输入时间且选中大房时的花费 { m_Cost=100*time+PeoNum*30; SetDlgItemInt(IDC_EDIT_COST,m_Cost,TRUE); } else if(m_Time==2 && m_RoomType==3)//自己输入时间且选中VIP房时的花费 { m_Cost=200*time+PeoNum*30; SetDlgItemInt(IDC_EDIT_COST,m_Cost,TRUE); } break; case 1://不需要自助餐时的花费 if(m_Time==0 && m_RoomType==0)//选中11:00-16:00这段时间且选中小房时的花费 { m_Cost=50*5; SetDlgItemInt(IDC_EDIT_COST,m_Cost,TRUE); } else if(m_Time==0 && m_RoomType==1)//选中11:00-16:00这段时间且选中中房时的花费 { m_Cost=70*5; SetDlgItemInt(IDC_EDIT_COST,m_Cost,TRUE); } else if(m_Time==0 && m_RoomType==2)//选中11:00-16:00这段时间且选中大房时的花费 { m_Cost=100*5; SetDlgItemInt(IDC_EDIT_COST,m_Cost,TRUE); } else if(m_Time==0 && m_RoomType==3)//选中11:00-16:00这段时间且选中VIP房时的花费 { m_Cost=200*5; SetDlgItemInt(IDC_EDIT_COST,m_Cost,TRUE); } else if(m_Time==1 && m_RoomType==0)//选中16:30-20:30这段时间且选中小房时的花费 { m_Cost=50*4; SetDlgItemInt(IDC_EDIT_COST,m_Cost,TRUE); } else if(m_Time==1 && m_RoomType==1)//选中16:30-20:30这段时间且选中中房时的花费 { m_Cost=70*4; SetDlgItemInt(IDC_EDIT_COST,m_Cost,TRUE); } else if(m_Time==1 && m_RoomType==2)//选中16:30-20:30这段时间且选中大房时的花费 { m_Cost=100*4; SetDlgItemInt(IDC_EDIT_COST,m_Cost,TRUE); } else if(m_Time==1 && m_RoomType==3)//选中16:30-20:30这段时间且选中VIP房时的花费 { m_Cost=200*4; SetDlgItemInt(IDC_EDIT_COST,m_Cost,TRUE); } else if(m_Time==2 && m_RoomType==0)//自己输入时间且选中小房时的花费 { m_Cost=50*time; SetDlgItemInt(IDC_EDIT_COST,m_Cost,TRUE); } else if(m_Time==2 && m_RoomType==1)//自己输入时间且选中中房时的花费 { m_Cost=70*time; SetDlgItemInt(IDC_EDIT_COST,m_Cost,TRUE); } else if(m_Time==2 && m_RoomType==2)//自己输入时间且选中大房时的花费 { m_Cost=100*time; SetDlgItemInt(IDC_EDIT_COST,m_Cost,TRUE); } else if(m_Time==2 && m_RoomType==3)//自己输入时间且选中VIP房时的花费 { m_Cost=200*time; SetDlgItemInt(IDC_EDIT_COST,m_Cost,TRUE); } break; } if(m_RoomType==0)//如果选中的是小房,下面输出小房的号码 { SetDlgItemInt(IDC_EDIT_ROOMNUM,SmallRoom,TRUE); } if(m_RoomType==1)//如果选中的是中房,下面输出中房的号码 { SetDlgItemInt(IDC_EDIT_ROOMNUM,MediumRoom,TRUE); } if(m_RoomType==2)//如果选中的是大房,下面输出大房的号码 { SetDlgItemInt(IDC_EDIT_ROOMNUM,BigRoom,TRUE); } if(m_RoomType==3)//如果选中的是VIP房,下面输出VIP房的号码 { SetDlgItemInt(IDC_EDIT_ROOMNUM,VipRoom,TRUE); } } } 2、 CKTVBookSystemDlg的OnMenuitemMod() 开始 判断用户已输入的信息等,当它选择修改时,那些已录信息显示在输入框中 N 不执行任何操作 若数据表非空 Y Y 指针指向第一个数据 数据表非空 N 不执行操作 取出注册表中原有的数据进行比较 如果相符,则重新将信息插入数据表 指针指向下一个记录 更新数据 结束 void CKTVBookSystemDlg::OnMenuitemMod() { // TODO: Add your command handler code here int i; CString Sname,name=m_RoomInfo.GetItemText(m_RoomInfo.GetSelectionMark(),0); CADD add; if(m_RoomInfo.GetSelectedCount()!=0) { i=m_RoomInfo.GetSelectionMark();//把已有的资料显示在弹出的对话框上 add.m_Name=m_RoomInfo.GetItemText(i,0); if(m_RoomInfo.GetItemText(i,5)=="小房") add.m_RoomType=0; else if(m_RoomInfo.GetItemText(i,5)=="中房") add.m_RoomType=1; else if(m_RoomInfo.GetItemText(i,5)=="大房") add.m_RoomType=2; else if(m_RoomInfo.GetItemText(i,5)=="VIP房") add.m_RoomType=3; add.m_Phone=m_RoomInfo.GetItemText(i,3); if(m_RoomInfo.GetItemText(i,4)=="有") add.m_Food=0; else if(m_RoomInfo.GetItemText(i,4)=="无") add.m_Food=1; if(m_RoomInfo.GetItemText(i,2)=="11:00-16:00") add.m_Time=0; else if(m_RoomInfo.GetItemText(i,2)=="16:30-20:30") add.m_Time=1; else add.m_Time=2; add.m_RoomNum=atoi(m_RoomInfo.GetItemText(i,1)); add.temp=atoi(m_RoomInfo.GetItemText(i,6)); add.DoModal(); } if(!m_pSet->BOF) { m_pSet->MoveFirst(); while(!m_pSet->adoEOF) { var=m_pSet->GetCollect("姓名");//在数据表中取出姓名,下同 Sname.Format(_com_util::ConvertBSTRToString((_bstr_t)var));//把姓名转化成字符串型,下同 if(Sname==name) { m_pSet->PutCollect("姓名",(_bstr_t)add.m_Name); m_pSet->PutCollect("房号",(_bstr_t)add.RoomNum); m_pSet->PutCollect("时间段",(_bstr_t)add.TimePeriod); m_pSet->PutCollect("联系方式",(_bstr_t)add.m_Phone); m_pSet->PutCollect("自助餐",(_bstr_t)add.Food); m_pSet->PutCollect("房间类型",(_bstr_t)add.RoomType); m_pSet->PutCollect("人数",(_bstr_t)add.PeopleNum); } m_pSet->MoveNext(); } m_RoomInfo.Update(TRUE); } } 六、功能测试 七、存在的不足与对策 八、源代码 void CKTVBookSystemDlg::LinkDataBase() { CoInitialize(NULL); m_pConnection.CreateInstance(__uuidof(Connection)); try { // 打开本地Access库Users.mdb m_pConnection->Open("Provider=Microsoft.Jet.OLEDB.4.0;Data Source=Users.mdb","","",adModeUnknown); } catch(_com_error e) { MessageBox("数据库连接失败,确认数据库Users.mdb是否在当前路径下!"); this->CloseWindow(); return; } //表的连接 m_pSet.CreateInstance(__uuidof(Recordse
展开阅读全文

开通  VIP会员、SVIP会员  优惠大
下载10份以上建议开通VIP会员
下载20份以上建议开通SVIP会员


开通VIP      成为共赢上传

当前位置:首页 > 包罗万象 > 大杂烩

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        抽奖活动

©2010-2026 宁波自信网络信息技术有限公司  版权所有

客服电话:0574-28810668  投诉电话:18658249818

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :微信公众号    抖音    微博    LOFTER 

客服