【文章內(nèi)容簡(jiǎn)介】
Picture(圖片信息實(shí)體) ;Resolvecase(回饋信息實(shí)體)ACASE(客戶信息實(shí)體)ER 圖:. . . .. . 學(xué)習(xí)好幫手圖 42 ACASE(客戶信息實(shí)體)ER 圖AutoMobile(汽車信息實(shí)體)ER 圖: 圖 43 AutoMobile(汽車信息實(shí)體)ER 圖Emploee(銷售人員信息實(shí)體)ER 圖:圖 44 Emploee(銷售人員信息實(shí)體)ER 圖FQ(客戶服務(wù)信息實(shí)體)ER 圖:圖 45 FQ(客戶服務(wù)信息實(shí)體)ER 圖Picture(圖片信息實(shí)體)ER 圖:圖 46 Picture(圖片信息實(shí)體)ER 圖Resolvecase(回饋信息實(shí)體)ER 圖:IDCostaName CompanyPriceAutoMobileIDCCommentsautoID CustomECommentsaCaseIDAnswerautoID QuestionStateFQPicaNamePictureID PwdeName PositionEmploee. . . .. . 學(xué)習(xí)好幫手圖 47 Resolvecase(回饋信息實(shí)體)ER 圖圖 48 購買關(guān)系 ER 圖 數(shù)據(jù)庫物理結(jié)構(gòu)設(shè)計(jì)現(xiàn)在需要將上面的數(shù)據(jù)庫概念結(jié)構(gòu)轉(zhuǎn)化為 SQL Server 2022 數(shù)據(jù)庫系統(tǒng)所支持的實(shí)際數(shù)據(jù)模型,也就是數(shù)據(jù)庫的邏輯結(jié)構(gòu)。汽車銷售管理系統(tǒng)數(shù)據(jù)庫中各個(gè)表格的設(shè)計(jì)結(jié)果如下面表格所示。每個(gè)表格表示在數(shù)據(jù)庫中的一個(gè)表。表 41 客戶信息表aCase列名 數(shù)據(jù)類型 長(zhǎng)度 是否為空ID int 4 0autoID int 4 0Custom char 10 0CComments char 100 0EComments char 100 0orderDate datetime 8 0Payment char 50 0City char 20 0表 42 汽車信息表AutoMobile列名 數(shù)據(jù)類型 長(zhǎng)度 是否為空ID int 4 0aName char 40 0Company char 50 0Cost int 4 0Price int 4 0Amount int 4 0Description char 400 0購買汽車 客戶m 1ProfitID autoIDresolvedCase. . . .. . 學(xué)習(xí)好幫手表 43 銷售人員信息表Emploee列名 數(shù)據(jù)類型 長(zhǎng)度 是否為空ID int 4 0eName char 10 0[Position] char 20 0Pwd char 20 0uvalue nvarchar 255 1lvalue image 16 1version int 4 0表 44 客戶服務(wù)信息表FQ列名 數(shù)據(jù)類型 長(zhǎng)度 是否為空ID int 4 0autoID int 4 0Question char 200 0Answer char 400 0State int 4 0表 45 圖片信息表Picture列名 數(shù)據(jù)類型 長(zhǎng)度 是否為空aName char 40 0Pic image 16 0表 46 回饋信息表resolvedCase列名 數(shù)據(jù)類型 長(zhǎng)度 是否為空ID int 4 0autoID int 4 0Profit int 4 0. . . .. . 學(xué)習(xí)好幫手 各數(shù)據(jù)表關(guān)系圖P i c t u r e a N a m e P i cF K 1 I Dr e s o l v e d C a s eP K , F K 1 I D a u t o I D P r o f i ta C a s eP K I D a u t o I D C u s t o m C C o m m e n t s E C o m m e n t s o r d e r D a t e P a y m e n t C i t yA u t o M o b i l e a N a m e C o m p a n y C o s t P r i c e A m o u n t D e s c r i p t i o nF K 1 I DE m p l o e e e N a m e P o s i t i o n P w dF K 1 I DF QP K , F K 1 I D a u t o I D Q u e s t i o n A n s w e r S t a t e圖 48 數(shù)據(jù)表關(guān)系圖 數(shù)據(jù)庫結(jié)構(gòu)實(shí)現(xiàn)通過前面對(duì)于數(shù)據(jù)庫部分的分析,現(xiàn)在可以在 SQL Server 2022 數(shù)據(jù)庫系統(tǒng)中實(shí)現(xiàn)該邏輯結(jié)構(gòu)。這是利用 SQL Server 2022 數(shù)據(jù)庫系統(tǒng)中的 SQL 查詢分析器實(shí)現(xiàn)的。下面給出部分實(shí)現(xiàn)上面各種關(guān)系的 SQL 語句。 數(shù)據(jù)庫的連接表示使用當(dāng)前登錄到系統(tǒng)的帳號(hào)訪問后臺(tái)數(shù)據(jù)庫,進(jìn)行數(shù)據(jù)相關(guān)的調(diào)用class opAutoMobile{private string conStr = server=D9J5732X。Integrated Security=SSPI。DataBase=SaleDB。private DbObject db。public opAutoMobile(){db = new DbObject(conStr)。} 數(shù)據(jù)庫連接后實(shí)現(xiàn)數(shù)據(jù)的調(diào)用通過以下被設(shè)定的參數(shù)訪問 SQLServer,并且通過 sqlmand 和sqlconnection 來實(shí)現(xiàn)數(shù)據(jù)庫更新,通過想數(shù)據(jù)庫發(fā)送更新數(shù)據(jù)庫的 SQL 語句實(shí)現(xiàn).class DbObject{private SqlConnection connection。private string connectString。. . . .. . 學(xué)習(xí)好幫手public DbObject(string constring){ = constring。 = new SqlConnection()。}private SqlCommand buildCommand(string storedProc,SqlParameter[] parameters){ SqlCommand mand = new SqlCommand()。 = 。 = ()。 = 。if(parameters != null){foreach(SqlParameter p in parameters){(p)。}}return mand。}//buildCommand 數(shù)據(jù)存儲(chǔ)過程的實(shí)現(xiàn)SqlDataReader 實(shí)現(xiàn)單項(xiàng)數(shù)據(jù)操作,不提供數(shù)據(jù)的緩存,并且在整個(gè)過程中它由 Buildmond 產(chǎn)生,實(shí)現(xiàn)數(shù)據(jù)參數(shù)的傳遞,在實(shí)現(xiàn)過程中,構(gòu)造了 sql Command 對(duì)象 cmd,然后調(diào)用 cmd 的 ExecuteReader 方法,并且返回一個(gè) Reader對(duì)象,實(shí)現(xiàn)存儲(chǔ).public SqlDataReader runProcedure(string storedProc,SqlParameter[] parameters){SqlDataReader reader。SqlCommand cmd = (storedProc,parameters)。if( == ){()。}Reader = ()。//()。return reader。}public void extProcedure(string storedProc,SqlParameter[] parameters){SqlCommand cmd = (storedProc,parameters)。if( == ){()。}()。()。} 實(shí)現(xiàn)數(shù)據(jù)庫調(diào)用的部分關(guān)鍵語句(1)更新汽車信息模塊的實(shí)現(xiàn),定義SQL數(shù)據(jù)參數(shù),運(yùn)用UPDATE實(shí)現(xiàn)對(duì)于數(shù)據(jù)的更新:public void updateMobile(string name,int price,int amount,string Description){SqlParameter[] parameters = {new SqlParameter(@aName,40), new SqlParameter(@Price,4), new SqlParameter(@Amount,4), new SqlParameter(@Description,400). . . .. . 學(xué)習(xí)好幫手}。parameters[0].Value = name。parameters[1].Value = price。parameters[2].Va