版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、計(jì)算機(jī)與信息學(xué)院數(shù)據(jù)庫(kù)課程設(shè)計(jì)專 業(yè) 班 級(jí) 學(xué)生姓名及學(xué)號(hào) 課程教學(xué)班號(hào) 任 課 教 師 實(shí)驗(yàn)指導(dǎo)教師 實(shí)驗(yàn)地點(diǎn) 第二機(jī)房 一、需求分析1.1現(xiàn)狀分析現(xiàn)如今普遍使用電話訂餐,這種方式訂餐雖然較為方便,效率也較高,但是由此引發(fā)的一些不良現(xiàn)象不得不重視。例如,定餐后,飯店未能夠及時(shí)將信息記錄存檔,由于看不到菜品的圖片,顧客不能對(duì)菜品有一個(gè)直觀的感受。同時(shí),電話預(yù)約中的誠(chéng)信問(wèn)題也不得不考慮,訂餐過(guò)程中顧客對(duì)信息的不明確會(huì)產(chǎn)生一定的誤解并由此造成人力資源及時(shí)間的浪費(fèi)。這樣開(kāi)發(fā)出圖文并茂,信息能夠及時(shí)更新和查看的在線網(wǎng)上訂餐系統(tǒng)就具有了重要的意義。1.2客戶需求分析客戶模塊的功能包括:個(gè)人信息管理、訂
2、餐兩大功能。個(gè)人信息部分中,包括個(gè)人信息修改以及訂餐信息查詢;訂餐部分為選擇菜品、訂餐狀態(tài)、付款方式。1.3 商店需求分析商店模塊功能包括:包括商店信息管理、訂餐確認(rèn)兩個(gè)部分。商店信息查詢、修改、菜品管理;訂餐確認(rèn)部分為訂餐狀態(tài)、送餐。1.4 管理員需求分析管理員功能模塊包括:人員信息管理及系統(tǒng)維護(hù)。人員信息管理為:客戶注冊(cè)、商店注冊(cè)、客戶及商店記錄查尋。1.5 性能需求分析該系統(tǒng)在性能功能上應(yīng)達(dá)到如下需求:操作簡(jiǎn)單、界面友好: 完全控件式的頁(yè)面布局,使得菜品等信息的錄入工作更簡(jiǎn)便,選擇菜品是只需點(diǎn)擊鼠標(biāo)即可。對(duì)常見(jiàn)的類(lèi)似網(wǎng)站的管理的各個(gè)方面:基本信息錄入、瀏覽、刪除、修改、搜索等方面都大體實(shí)
3、現(xiàn),顧客對(duì)菜品的預(yù)定及支付方式;即時(shí)可見(jiàn):對(duì)客戶預(yù)定餐飲信息的處理(包括錄入、刪除)將立即在主頁(yè)的對(duì)應(yīng)欄目顯示出來(lái),達(dá)到“即時(shí)發(fā)布、即時(shí)見(jiàn)效”的功能;系統(tǒng)運(yùn)行應(yīng)該快速、穩(wěn)定、高效和可靠;在結(jié)構(gòu)上應(yīng)具有很好的可擴(kuò)展性,便于將來(lái)的功能擴(kuò)展和維護(hù)。1.6可行性分析隨著經(jīng)濟(jì)的快速發(fā)展,網(wǎng)上訂餐已經(jīng)如雨后春筍般的出現(xiàn)在了許多地方。特別在公司,企業(yè)內(nèi)部,團(tuán)體訂餐已經(jīng)成為了趨勢(shì)。同時(shí),隨著全國(guó)人民的精神、物質(zhì)和文化生活高度的提高,人們已經(jīng)不在僅僅停留在吃飽的程度,不但要吃飽,還要吃好,而且口味也越來(lái)越挑刺,正因?yàn)槿绱司W(wǎng)絡(luò)訂餐業(yè)務(wù)的出現(xiàn),正迎合了這些人的口味,他們不但省去了自己做飯的麻煩,而且也能尋找和發(fā)現(xiàn)新
4、的菜品,品嘗不同風(fēng)格的菜品,網(wǎng)絡(luò)訂餐業(yè)務(wù)在中國(guó)有著極大的發(fā)展空間以及良好的背景。1.7總體設(shè)計(jì)原則.開(kāi)放性、可擴(kuò)充性、可靠性原則開(kāi)放系統(tǒng)是生產(chǎn)各種計(jì)算機(jī)產(chǎn)品普遍遵循的原則,遵循這種標(biāo)準(zhǔn)的產(chǎn)品都符合一些公共的、可以相互操作的標(biāo)準(zhǔn),能夠融洽的在一起工作。開(kāi)放系統(tǒng)使得各種類(lèi)型的網(wǎng)絡(luò)和系統(tǒng)互連簡(jiǎn)單、標(biāo)準(zhǔn)統(tǒng)一,容易擴(kuò)展升級(jí)。從而適應(yīng)廣大用戶需求的多變性和產(chǎn)品的更新?lián)Q代。.良好的用戶操作界面用戶操作界面美觀、方便、實(shí)用,使用戶能在較短的時(shí)間內(nèi)掌握其使用方法。.實(shí)用性原則任何系統(tǒng)的設(shè)計(jì)都要考慮其實(shí)用性,系統(tǒng)開(kāi)發(fā)的目的是為了實(shí)現(xiàn)業(yè)務(wù)處理自動(dòng)化、規(guī)范化,提高工作效率,減輕工作人員的勞動(dòng)強(qiáng)度,減少開(kāi)支。工作平臺(tái)適
5、用于不同的網(wǎng)絡(luò)平臺(tái)。二、概念設(shè)計(jì)2.1 系統(tǒng)E-R圖2.2數(shù)據(jù)流圖 2.3數(shù)據(jù)字典2.3.1 數(shù)據(jù)項(xiàng)數(shù)據(jù)項(xiàng)名/編號(hào)含義說(shuō)明數(shù)據(jù)類(lèi)型長(zhǎng)度c_id/p1用戶唯一性說(shuō)明varchar9c_name/p2用戶昵稱varchar20c_tel/p3用戶聯(lián)系方式varchar11c_key/p4用戶登陸密碼varchar20d_id/p5菜的唯一性說(shuō)明intd_name/p6菜的名稱varchar30d_remain/p7菜的剩余量intd_discount/p8打折float2d_price/p9菜的單價(jià)float2d_pid/p10提供商編號(hào)intp_id/p11商店唯一性說(shuō)明varchar9p_ad
6、d/p12商店地址varchar30p_name/p13商店名稱varchar20p_key/p14商家登陸密碼varchar20p_tel/p15商店聯(lián)系方式varchar11p_lev/p16商家信譽(yù)intp_state/p17商家狀態(tài)varchar15m_id/p18管理員唯一性說(shuō)明 varchar4m_name/p19管理員姓名varchar20m_key/p20管理員密碼varchar20o_id/p21訂單標(biāo)號(hào)into_cid/p22訂單中客戶標(biāo)識(shí)into_did/p23訂單中菜標(biāo)識(shí)into_pid /p24訂單中商店標(biāo)識(shí)into_time /p25訂餐時(shí)間smalldatetim
7、eo_num/26數(shù)量into_cadd/27客戶地址varchar50o_state/28訂餐狀態(tài)varchar15m_c_mid /p29管理員編號(hào)intm_c_cid/p30客戶編號(hào)intm_c_time/p31時(shí)間smalldatetimem_c_operation/p32操作類(lèi)別varchar15m_p_mid/p33管理員編號(hào)intm_p_pid/p34商店編號(hào)intm_p_time/p35操作類(lèi)別smalldatetimem_c_operation /p36時(shí)間varchar152.3.2 數(shù)據(jù)結(jié)構(gòu)數(shù)據(jù)結(jié)構(gòu)名稱含義說(shuō)明組成客戶客戶信息p1-p4菜品菜品信息p5-p10商店商店信息
8、p11-p17管理員管理員信息p18-p20訂單訂單信息p21-p28管理用戶管理用戶信息P29-p32管理商家管理商家信息P33-p362.3.3 處理過(guò)程處理過(guò)程名說(shuō)明輸入輸出處理注冊(cè)所有用戶用戶詳細(xì)信息注冊(cè)結(jié)果跳轉(zhuǎn)登陸/重新注冊(cè)登陸所有用戶編號(hào)與密碼登陸成功/失敗登陸首頁(yè)/重新登陸修改用戶信息已登錄用戶相關(guān)修改信息修改成功/失敗修改存儲(chǔ)信息訂餐已登錄用戶菜品、數(shù)量訂餐成功/失敗加入購(gòu)物車(chē)/重新選擇修改訂餐已訂餐用戶菜品、數(shù)量的修改修改成功/失敗加入購(gòu)物車(chē)/重新選擇下訂單已訂餐用戶生成訂單查詢與確認(rèn)訂單已訂餐用戶提交訂單已訂餐用戶接受訂單商店交付相關(guān)工作人員送餐送餐員送餐確認(rèn)菜單修改商店新
9、的菜品、菜品價(jià)格修改更新菜譜管理管理員添加或刪減用戶更新用戶信息庫(kù)信息更新管理員需要更新的信息信息更新三、邏輯結(jié)構(gòu)設(shè)計(jì)3.1 ER圖向關(guān)系的初步轉(zhuǎn)換客戶(編號(hào),昵稱,密碼,聯(lián)系方式,狀態(tài))管理員(編號(hào),姓名,密碼)商家(編號(hào),名稱,密碼,商家地址,聯(lián)系方式,信譽(yù),狀態(tài),剩余量,總量)菜(編號(hào),名稱,價(jià)格,折扣,提供商編號(hào),最后修改時(shí)間,狀態(tài))訂單(客戶編號(hào),菜編號(hào),提供商編號(hào),訂單時(shí)間,數(shù)量,客戶地址,狀態(tài))管理客戶(管理員編號(hào),客戶編號(hào),時(shí)間,操作類(lèi)別)管理商家(管理員編號(hào),商家編號(hào),時(shí)間,操作類(lèi)別)3.2 E-R具體轉(zhuǎn)換代碼客戶表:create table client(c_id varc
10、har(9) primary key not null check(c_id like 'c%'), c_name varchar(20) not null, c_key varchar(20) not null, c_tel varchar(11) not null check(c_tel like '1%') unique )管理員表:create table manager( m_id varchar(4) primary key not null check(m_id like 'm%'), m_name varchar(20) not
11、null, m_key varchar(20) not null)商家表:create table provider(p_id varchar(9) primary key not null check(p_id like 'p%'), p_name varchar(20) not null, p_key varchar(20) not null, p_tel varchar(11) not null unique check(p_tel like '1%'), p_add varchar(30) not null unique, p_lev int, p_st
12、ate varchar(15) check (p_state in ('營(yíng)業(yè)中','打烊','歇業(yè)')菜譜:create table dish(d_id int identity(1378001,1) primary key not null, d_name varchar(30) not null, d_price float(2) not null, d_discount float(2), d_pid varchar(9) not null , foreign key (d_pid) references provider(p_id), d
13、_remain int not null check (d_remain>=0), d_total int not null, )訂單:create table ord(o_id int identity(10000001,1) primary key not null, o_cid varchar(9), foreign key (o_cid) references client (c_id), o_did int, foreign key (o_did) references dish (d_id), o_pid varchar(9), foreign key (o_pid) ref
14、erences provider (p_id), o_time smalldatetime, o_num int not null check (o_num>0), o_cadd varchar(50) not null, o_state varchar(15) check (o_state in('正常','取消')管理客戶:create table manager_client(m_c_mid varchar(4), foreign key (m_c_mid) references manager (m_id), m_c_cid varchar(9),
15、 foreign key (m_c_cid) references client (c_id), m_c_time smalldatetime, primary key (m_c_mid,m_c_cid,m_c_time), m_c_operation varchar(15) check (m_c_operation in('更新','增加','刪除')管理商店:create table manager_provider(m_p_mid varchar(4), foreign key (m_p_mid) references manager (m
16、_id), m_p_pid varchar(9), foreign key (m_p_pid) references provider (p_id), m_p_time smalldatetime, primary key (m_p_mid,m_p_pid,m_p_time), m_c_operation varchar(15) check (m_c_operation in('允許注冊(cè)','注銷(xiāo)賬戶') )四、外圍實(shí)現(xiàn)部分 -客戶端實(shí)現(xiàn)本次數(shù)據(jù)庫(kù)的外圍采用C+語(yǔ)言實(shí)現(xiàn)的,編程環(huán)境使用的是visual studio 2010。數(shù)據(jù)庫(kù)連接采用的是ADO(Activ
17、eX Data Objects),主要是因?yàn)槭褂闷饋?lái)十分簡(jiǎn)便(只需掌握三個(gè)智能指針即可完成大多數(shù)功能),且不需要下載其他文件(windows自帶)。而用戶交互界面則使用的是dos窗口??蛻舳四壳疤峁﹥蓚€(gè)功能,1是訂餐功能,1是注冊(cè)功能。首先介紹注冊(cè)功能,每個(gè)注冊(cè)賬戶對(duì)應(yīng)一個(gè)數(shù)據(jù)庫(kù)登陸賬戶以及該賬戶下的一個(gè)擁有客戶角色權(quán)限的用戶,已注冊(cè)賬戶的信息由client表存儲(chǔ)。注冊(cè)過(guò)程具體如下: 用戶選擇注冊(cè)功能后,程序默認(rèn)以sa身份登錄數(shù)據(jù)庫(kù),用戶通過(guò)dos窗口輸入新的id以及密碼,程序在client表中檢查id是否被使用,若id已被占用則提示用戶輸入新的id,否則通過(guò)sql語(yǔ)句創(chuàng)建登陸賬戶以及擁有一定
18、權(quán)限的數(shù)據(jù)庫(kù)用戶并提示用戶注冊(cè)成功。(注冊(cè)實(shí)現(xiàn)代碼如下:)然后介紹訂餐功能,選擇訂餐功能后首先提示用戶輸入賬戶(id)以及密碼,輸入后,程序嘗試以此賬戶連接數(shù)據(jù)庫(kù),以30秒為時(shí)限,若超過(guò)時(shí)限沒(méi)有連接上數(shù)據(jù)庫(kù)則提示用戶連接失敗,否則從數(shù)據(jù)庫(kù)中選擇狀態(tài)為”營(yíng)業(yè)中”的飯店信息顯示供用戶選擇,用戶選擇飯店編號(hào)后,從數(shù)據(jù)庫(kù)中讀取該飯店提供的剩余量大于0的菜品顯示供用戶選擇,待用戶作好選擇后,將訂單插入數(shù)據(jù)庫(kù)中ord表(訂單編號(hào)采用自增長(zhǎng))并修改菜品的剩余值,提示用戶接受訂單成功,并關(guān)閉與數(shù)據(jù)庫(kù)的連接。五、數(shù)據(jù)庫(kù)實(shí)現(xiàn)5.1據(jù)庫(kù)的建立啟動(dòng)服務(wù)管理器,打開(kāi)查詢分析器,在調(diào)試程序窗口輸入下列語(yǔ)句:Create
19、database database_zbgOn(name= zbg_data,Filename=' E:dbdesign zbg_data.mdf',Size=10mbMaxsize=500mb,Filegrowth=5mb)Log on(name= zbg_log,Filename=' E:dbdesign zbg_log.ldf',Size=5mbMaxsize=100mb,Filegrowth=5mb)5.2數(shù)據(jù)載入1)client表insert into client values('c20120001','雷政富',
20、39;leizhenf','#39;);insert into client values('c20120002','吳婷','wuting12','#39;);insert into client values('c20120003','李毅','liyi1234','#39;);insert into client values('c20120004','鄭媛媛'
21、;,'zhengyua','#39;);insert into client values('c20120005','石磊','shilei12','#39;);insert into client values('c20120006','吳彥祖','wuyanzu1','#39;);2)managerinsert into manager values('m001',
22、39;劉詩(shī)詩(shī)','liushish');insert into manager values('m002','郭晶晶','guojingj');insert into manager values('m003','楊冪','yangmi12');3)providerinsert into provider values('p20131001','東北酒家','wuqilong','#39;,
23、9;梧桐路12號(hào)',4,'營(yíng)業(yè)中');insert into provider values('p20131002','學(xué)惠園','lichunch','#39;,'梧桐路21號(hào)',3,'營(yíng)業(yè)中');insert into provider values('p20131003','東北酒店','yanjiehe','#39;,'翟乃路12號(hào)',4,'打烊
24、39;);insert into provider values('p20131004','四川酒店','yuliang1','#39;,'淄博路5號(hào)',4,'歇業(yè)');insert into provider values('p20131005','狀元酒店','maweidu1','#39;,'中原路54號(hào)',4,'營(yíng)業(yè)中');insert into provider
25、values('p20131006','大排檔','fengtang','#39;,'中原路89號(hào)',4,'打烊');insert into provider values('p20131007','老鄉(xiāng)雞','maoyushi','#39;,'梧桐路13號(hào)',4,'營(yíng)業(yè)中');4)dishinsert into dish values('大對(duì)蝦',32.3
26、,0.95,'p20131001',500,500);insert into dish values('大對(duì)蝦',31.3,1,'p20131002',300,300);insert into dish values('大對(duì)蝦',30,0.98,'p20131007',500,500);insert into dish values('彩花迎賓',22.3,0.97,'p20131002',500,500);insert into dish values('彩花迎賓'
27、,32.3,0.9,'p20131003',500,500);insert into dish values('魷魚(yú)湯',12.3,1,'p20131004',100,100);insert into dish values('狗全席',22.3,1,'p20131004',500,500);insert into dish values('狗全席',22.4,1,'p20131005',500,500);insert into dish values('龍門(mén)魚(yú)',3
28、2.3,0.99,'p20131005',500,500);insert into dish values('龍門(mén)魚(yú)',33,0.98,'p20131006',500,500);insert into dish values('叫花雞',133.2,0.8,'p20131001',50,50);insert into dish values('叫花雞',133,0.81,'p20131006',50,50);insert into dish values('叫花雞',
29、133.1,0.8,'p20131007',50,50)5)ordinsert into ord values('c20120001',1378001,'p20131001','2000-05-01 12:35:29.998',1,'梧桐路99號(hào)','正常');insert into ord values('c20120001',1378011,'p20131001','2000-05-02 12:35:29.998',2,'梧桐路99號(hào)
30、9;,'正常');insert into ord values('c20120002',1378006,'p20131004','2000-05-03 12:35:29.998',3,'梧桐路77號(hào)','正常');insert into ord values('c20120002',1378007,'p20131004','2000-05-04 12:35:29.998',4,'梧桐路77號(hào)','正常');insert
31、into ord values('c20120002',1378009,'p20131005','2000-05-05 12:35:29.998',5,'梧桐路77號(hào)','正常');insert into ord values('c20120004',1378004,'p20131002','2000-05-06 12:35:29.998',6,'梧桐路88號(hào)','正常');insert into ord values('c20
32、120005',1378004,'p20131002','2000-05-07 12:35:29.998',7,'梧桐路88號(hào)','正常');insert into ord values('c20120006',1378003,'p20131007','2000-05-08 12:35:29.998',8,'梧桐路66號(hào)','正常');insert into ord values('c20120006',1378004,'
33、;p20131002','2000-05-09 12:35:29.998',9,'梧桐路66號(hào)','正常');6)manager_clientinsert into manager_client values('m001','c20120001','2013-05-08 12:35:29','增加');insert into manager_client values('m001','c20120002','2013-05-08 12:
34、37:29','增加');insert into manager_client values('m003','c20120003','2013-05-08 12:38:29','增加');insert into manager_client values('m002','c20120004','2013-05-08 12:39:29','增加');insert into manager_client values('m002',
35、'c20120005','2013-05-08 13:35:29','增加');insert into manager_client values('m003','c20120006','2013-05-08 14:35:29','增加');7)manager_providerinsert into manager_provider values('m003','p20131001','2013-02-08 14:35:29','
36、;允許注冊(cè)');insert into manager_provider values('m003','p20131002','2013-02-08 15:35:29','允許注冊(cè)');insert into manager_provider values('m003','p20131003','2013-02-08 16:35:29','允許注冊(cè)');insert into manager_provider values('m003',
37、9;p20131004','2013-02-08 17:35:29','允許注冊(cè)');insert into manager_provider values('m003','p20131005','2013-02-08 18:35:29','允許注冊(cè)');insert into manager_provider values('m003','p20131006','2013-02-08 19:35:29','允許注冊(cè)');ins
38、ert into manager_provider values('m003','p20131007','2013-02-08 19:39:29','允許注冊(cè)');六、數(shù)據(jù)庫(kù)的運(yùn)行和維護(hù)作為網(wǎng)管員,無(wú)論其管理的網(wǎng)絡(luò)的規(guī)模是大還是小,在日常的管理中除了維護(hù)網(wǎng)絡(luò)平穩(wěn)運(yùn)行、及時(shí)排除網(wǎng)絡(luò)故障、保護(hù)網(wǎng)絡(luò)安全等工作以外,備份網(wǎng)絡(luò)中關(guān)鍵數(shù)據(jù)也是其中的一個(gè)非常非常重要的工作環(huán)節(jié)。網(wǎng)絡(luò)中的各種故障無(wú)非就分兩種:軟件故障和硬件故障。對(duì)于“硬件故障”可以通過(guò)維修或更換硬件設(shè)備得到及時(shí)解決;對(duì)于“軟件故障”則可以通過(guò)重新安裝或升級(jí)軟件、重做網(wǎng)絡(luò)或應(yīng)用軟件
39、系統(tǒng)等方法及時(shí)解決,而且用此方法來(lái)解決網(wǎng)絡(luò)故障大多需要一些基礎(chǔ)的、關(guān)鍵的數(shù)據(jù)支持才能得以恢復(fù)正常。但是,網(wǎng)絡(luò)中諸如此類(lèi)的關(guān)鍵數(shù)據(jù)(特別是“應(yīng)用軟件系統(tǒng)”中的關(guān)鍵數(shù)據(jù))的損壞或丟失,絕大部分是無(wú)法恢復(fù)和彌補(bǔ)的。6.1定義并設(shè)置備份6.2啟用維護(hù)計(jì)劃任務(wù)6.3運(yùn)行要求:操作系統(tǒng):Windows xp及以上版本,數(shù)據(jù)庫(kù):SQL server2005,外圍平臺(tái):Microsoft Visual studio2010內(nèi)存:2G七、感想及總結(jié):此次的數(shù)據(jù)庫(kù)課程設(shè)計(jì)中,我通過(guò)與小組內(nèi)的其他兩位同學(xué)的共同探討與努力,設(shè)計(jì)并實(shí)現(xiàn)了人生中的第一個(gè)數(shù)據(jù)庫(kù),由于剛剛上完數(shù)據(jù)庫(kù)的課程,此次的動(dòng)手實(shí)踐確實(shí)加深了我對(duì)數(shù)據(jù)庫(kù)
40、這門(mén)課程的理解,同時(shí)也發(fā)現(xiàn)了許多平常忽略的問(wèn)題。平時(shí)看書(shū)上的E-R圖十分簡(jiǎn)單,但自己設(shè)計(jì)的時(shí)候卻發(fā)現(xiàn)需要考慮許多細(xì)節(jié),稍有疏忽就會(huì)產(chǎn)生許多棘手的問(wèn)題。E-R圖之后還要考慮表,視圖,觸發(fā)器,索引,完整性約束等問(wèn)題,對(duì)于第一次設(shè)計(jì)數(shù)據(jù)庫(kù)的我們來(lái)說(shuō)剛開(kāi)始的時(shí)候確實(shí)感覺(jué)到無(wú)從下手,很難把問(wèn)題考慮全面,最終我們?nèi)斯餐懻摬⒃O(shè)計(jì)出了數(shù)據(jù)庫(kù)的雛形,這時(shí)的數(shù)據(jù)庫(kù)看起來(lái)還十分簡(jiǎn)陋。后來(lái)我們的開(kāi)發(fā)方式進(jìn)行了改變,由我和一個(gè)同學(xué)分別扮演客戶和商家的角色,另一位同學(xué)扮演數(shù)據(jù)庫(kù)角色。開(kāi)發(fā)過(guò)程中,數(shù)據(jù)庫(kù)角色的同學(xué)主要考慮優(yōu)化數(shù)據(jù)庫(kù)并滿足客戶角色和商家角色的要求,而客戶角色和商家角色在完成自己的應(yīng)用平臺(tái)的過(guò)程中向數(shù)據(jù)庫(kù)提
41、出要求,主要是對(duì)權(quán)限的申請(qǐng)、對(duì)觸發(fā)器視圖等方面的要求。這樣我們的數(shù)據(jù)庫(kù)就大概成形了,然后我們?nèi)擞止餐匀娴亟嵌葘徱暳艘槐槲覀兊臄?shù)據(jù)庫(kù),提出各自的意見(jiàn),最后提交的數(shù)據(jù)庫(kù)則是我們?nèi)斯餐庵镜捏w現(xiàn)。八、源碼:/ Client.cpp : 定¡§義°?控?制?臺(tái)¬¡§應(yīng)®|用®?程¨¬序¨°的Ì?入¨?口¨²點(diǎn)Ì?。¡ê/#include "stdafx.h"#include <st
42、dio.h>#include <iostream>#include <Windows.h>#include <ctime>#include <iomanip>using namespace std;#import "c:program filescommon filessystemadomsado15.dll" no_namespace rename("EOF", "adoEOF") void work1()_ConnectionPtr m_pConnection;_Records
43、etPtr m_pRecordset;char i_user15,i_pwd15;cout<<"*請(qǐng)?輸º?入¨?用®?戶¡ì名?及¡ã密¨¹碼?登Ì?錄?*"<<endl;cin>>i_user>>i_pwd;CoInitialize(NULL);trym_pConnection.CreateInstance("ADODB.Connection");cout<<".1"<
44、;<endl;m_pConnection->ConnectionTimeout=30;m_pConnection->Open(_bstr_t)"Provider=SQLOLEDB;Server=(local);Database=database_zbg;uid="+i_user+"pwd="+i_pwd+"","","",adModeUnknown);cout<<".2"<<endl;catch(_com_error e)cout&l
45、t;<"Cannot connect to Database "<<endl;return ;cout<<"已°?成¨¦功|登Ì?錄?"<<endl;m_pRecordset.CreateInstance("ADODB.Recordset");m_pRecordset->Open("select * from provider where p_state='營(yíng)®a業(yè)°¦Ì中D'&qu
46、ot;,m_pConnection.GetInterfacePtr(),adOpenDynamic,adLockOptimistic,adCmdText);cout<<"*目?前¡ã營(yíng)®a業(yè)°¦Ì中D的Ì?商¦¨¬家¨°*"<<endl;cout.setf(ios:left);cout<<setw(20)<<"編À¨¤號(hào)?"<<setw(20)&l
47、t;<"名?字Á?"<<setw(20)<<"評(píng)¨¤價(jià)?度¨¨"<<setw(20)<<"電Ì?話¡ã"<<setw(20)<<"地Ì?址¡¤"<<endl;_variant_t vpid,vpname,vpadd,vptel,vplev;while(!m_pRecordset->adoEOF)vpid=m_pR
48、ecordset->GetCollect("p_id");vpname=m_pRecordset->GetCollect("p_name");vpadd=m_pRecordset->GetCollect("p_add");vptel=m_pRecordset->GetCollect("p_tel");vplev=m_pRecordset->GetCollect("p_lev");cout<<setw(20)<<(char*)(_bstr_t)
49、vpid<<setw(20)<<(char*)(_bstr_t)vpname<<setw(20)<<Val<<setw(20)<<(char*)(_bstr_t)vptel<<setw(20)<<(char*)(_bstr_t)vpadd<<endl;m_pRecordset->MoveNext();m_pRecordset->Close();cout<<"請(qǐng)?輸º?入¨?所¨´選?商¦
50、¨¬家¨°的Ì?編À¨¤號(hào)?"<<endl;char pid15;cin>>pid;m_pRecordset->Open(_variant_t)(_bstr_t)"select * from dish where d_pid='"+pid+"'and d_remain>0"),m_pConnection.GetInterfacePtr(),adOpenDynamic,adLockOptimistic,adCmdTe
51、xt);cout<<"*請(qǐng)?選?擇?菜?品¡¤*"<<endl;cout<<setw(20)<<"編À¨¤號(hào)?"<<setw(20)<<"名?字Á?"<<setw(20)<<"價(jià)?格?"<<setw(20)<<"剩º¡ê余®¨¤數(shù)ºy量¢?"
52、;<<endl;_variant_t vdid150,vdpid150,vdname,vdprice,vdremain;int cnt=1;while(!m_pRecordset->adoEOF)vdidcnt=m_pRecordset->GetCollect("d_id");vdpidcnt=m_pRecordset->GetCollect("d_pid");vdname=m_pRecordset->GetCollect("d_name");vdprice=m_pRecordset->Get
53、Collect("d_price");vdremain=m_pRecordset->GetCollect("d_remain");cout<<setw(20)<<cnt<<setw(20)<<(char*)(_bstr_t)vdname<<setw(20)<<(double)vdprice<<setw(20)<<Val<<endl;cnt+;m_pRecordset->MoveNext();char caddr2
54、00,num15;int did;cout<<"請(qǐng)?輸º?入¨?送¨ª菜?地Ì?址¡¤"<<endl;cin>>caddr;cout<<"請(qǐng)?輸º?入¨?選?擇?的Ì?菜?品¡¤的Ì?編À¨¤號(hào)?以°?及¡ã數(shù)ºy量¢?"<<endl;while(cin>>did)if(did
55、=0)break;cin>>num;m_pConnection->Execute(_bstr_t)"insert into ord (o_cid,o_did,o_pid,o_num,o_cadd) values ('"+i_user+"','"+(char*)(_bstr_t)vdiddid+"','"+(char*)(_bstr_t)vdpiddid+"','"+num+"','"+caddr+"
56、;')",NULL, 1);/m_pConnection->Execute(_bstr_t)"update dish set d_remain=d_remain-"+num,NULL,1);cout<<"*已°?接¨®受º¨¹您¨²的Ì?訂?單Ì£¤,ê?感D謝?您¨²的Ì?支¡ì持?*"<<endl;m_pRecordset-&
57、gt;Close();m_pConnection->Close();CoUninitialize();void work2()_ConnectionPtr m_pConnection;_RecordsetPtr m_pRecordset;CoInitialize(NULL);m_pConnection.CreateInstance("ADODB.Connection");m_pConnection->ConnectionTimeout=30;m_pConnection->Open("Provider=SQLOLEDB;Server=(local)
58、;Database=database_zbg;uid=sa;pwd=sa;","","",adModeUnknown);m_pRecordset.CreateInstance("ADODB.Recordset");cout<<"*請(qǐng)?輸º?入¨?注Á¡é冊(cè)¨¢id以°?及¡ã密¨¹碼?*"<<endl;char w2_id15,w2_pwd15;docin>
59、>w2_id>>w2_pwd;m_pRecordset->Open(_bstr_t)"select * from client where c_id='"+w2_id+"'",m_pConnection.GetInterfacePtr(),adOpenDynamic,adLockOptimistic,adCmdText);if(!m_pRecordset->adoEOF)cout<<"該?id已°?被À?使º1用®?,ê?請(qǐng)?重?新?輸&
60、#186;?入¨?"<<endl;elsecout<<"該?id可¨¦以°?使º1用®?"<<endl;cout<<"請(qǐng)?輸º?入¨?您¨²的Ì?姓?名?和¨ª聯(lián)¢a系¦Ì電Ì?話¡ã"<<endl;char name20,tel20;cin>>name>>tel;m_pCo
61、nnection->Execute(_bstr_t)"insert into client(c_id,c_name,c_key,c_tel) values ('"+w2_id+"','"+name+"','"+w2_pwd+"','"+tel+"')",NULL,1);m_pConnection->Execute(_bstr_t)"create login "+w2_id+" with password='"+w2_pwd+"'&qu
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 二零二五年度交通安全免責(zé)協(xié)議書(shū):交通安全責(zé)任劃分3篇
- 二零二五年度民辦學(xué)校辦學(xué)許可證轉(zhuǎn)讓及教學(xué)資源共享合同3篇
- 2025年度公司單位員工帶薪年假與人事合同實(shí)施細(xì)則3篇
- 二零二五年度養(yǎng)殖場(chǎng)租賃與飼料原料采購(gòu)合作協(xié)議2篇
- 二零二五年度農(nóng)機(jī)租賃與農(nóng)產(chǎn)品深加工合作合同3篇
- 2025年度勞動(dòng)合同解除通知及離職證明模板3篇
- 二零二五年度股東退出與公司社會(huì)責(zé)任履行協(xié)議2篇
- 2025年度農(nóng)村保潔員服務(wù)區(qū)域及質(zhì)量合同
- 2025年度城市綠化石子供應(yīng)及養(yǎng)護(hù)服務(wù)合同3篇
- 2025年度年度高風(fēng)險(xiǎn)戶外活動(dòng)意外事故免責(zé)協(xié)議3篇
- 高中體育教學(xué)教案30篇
- 2025年低壓電工作業(yè)模擬考試題庫(kù)
- 七年級(jí)上冊(cè)語(yǔ)文??急乇持攸c(diǎn)知識(shí)梳理(pdf版)
- 銀行先進(jìn)個(gè)人先進(jìn)事跡材料
- 排洪渠擋墻、河道清淤及渣土外運(yùn)施工方案
- 上海市近10年物理中考真題匯編專題05電路故障分析2
- 連鑄工職業(yè)技能大賽考試題庫(kù)-上(單選、多選題)
- 第三章《地球的面貌》-2024-2025學(xué)年七年級(jí)上冊(cè)地理單元測(cè)試卷(湘教版2024)
- 八、射線、直線和角(教學(xué)設(shè)計(jì))-2024-2025學(xué)年四年級(jí)上冊(cè)數(shù)學(xué)蘇教版
- DB65-T 4828-2024 和田玉(子料)鑒定
- 人教版(2024新版)七年級(jí)上冊(cè)英語(yǔ)各單元重點(diǎn)單詞、句型背誦清單
評(píng)論
0/150
提交評(píng)論