Ⅰ 如何創建資料庫實例
什麼是sql呢
SQL就是專門用來做資料庫的一門語言
和C語言差不多
(當然功能不緊緊是做數據了
編程啊
都可以.....
這里就不多說了)z這道題用ACCESS
就可以完成了
1
首先
用Access
2000(資料庫
)做一個資料庫
打開設計器創建表
在點菜單
另存為
名為班級名+自己名字英文簡寫
最後點保存啦
(每完成系統都是有提示的啦)
第一問
解決
2
打開設計器
上面做的表下面下
創建數據表
名字都是在最後完成時做的
先不用管
然後在輸入sID,sName,sSex,sAge,sClass
注意根據後面的要求填寫欄位
及數據類型
以及
在做其他的問題了將T_Student表的sID欄位設置為標識列,種子為1,增量為2。
為T_Student表的sSex(性別)欄位設置其默認值為「男」。
為T_Student表的sAge(年齡)欄位設置檢查約束,規定年齡在0到30歲之間。
為T_KC表的cName(課程名稱)欄位設置唯一性約束。,規定課程名稱不得重復。
生成一個規則t_rule,限制數據的取值范圍在(0---100)之間,然後將這個規則綁定到T_CJ表的cj(成績)欄位。
為T_KC表的cName欄位創建索引。
最後
當然主鍵當然是SID了
一定要標好哦~~·先不管作業其他要求
在依次做其他2個表;
T_KC(cID,cName,sBianhao,sXuefen)
T_CJ(sID,cID,cj)
注意主鍵是SID
3.
做好了三個表後退出設計器
在打開以一個個表
在按要求輸入(在每個表中添加3-5條記錄。)
好了
基本就完成了
當然用SQL
也能完成
這些問題
並且要快
但涉及到TQL語言
編程問題
很難說清楚
就不一一解釋了···
Ⅱ sql server 開發版怎麼建立資料庫實例
1,按正常的安裝SQL Server 2005方式進行安裝,直到選擇安裝組件時選擇你所需要安裝的的組件,此處我只選擇SQLServer database Service。
每個實例要求擁有自己專用的可執行文件、注冊鍵和文件夾。因此如果你需求使用到其它的組件,你也需要在此處進行選擇,但有一個組件是大家共同的:工作站組件、聯機叢書和開發工具。
2.為了讓每個實例擁有自己的文件夾,請點擊高級—游覽--進行新實例安裝文件路徑的選擇。
3.按規劃要求起一個讓人一看就知道該實例用途的實例名。第一個實例名通常是作為默認實例,其實例名與主機名相同。由於我這是在測試,因此實例名我起TEST。
4,根據規劃要求:為每個實例建立自己相應的管理員帳號。由於這個帳號和密碼已經寫入到SQL安裝文件中,因此不建議在資料庫安裝完成後去修改這個帳號的密碼。在SQL Server 2005資料庫群集中的安裝帳號和密碼也是一樣,不建議修改。
5.從安全形度考慮,Windows 身份驗證模式比混合模式要安全得多,因此建議在不需要考慮與以前版本的兼容性時,建議使用windows 身份驗證模式。
6. 後面的步驟與正常安裝一樣,直到安裝完成。
Ⅲ sQL server 什麼是實例
實例在資料庫中,代表一些程序的集合。如Oracle中,實例就是一些能支撐資料庫運行的資料庫程序。
在面向對象程序設計中,「類」在實例化之後叫做一個「實例」。 「類」是靜態的,不佔進程內存,而「實例」擁有動態內存。
實例化是指在面向對象的編程中,把用類創建對象的過程稱為實例化。是將一個抽象的概念類,具體到該類實物的過程。實例化過程中一般由類名 對象名 = new 類名(參數1,參數2...參數n)構成。
(3)sqlserver資料庫設計實例擴展閱讀
實例(instance)和對象(object)的區別
實例和對象基本上是同義詞,它們常常可以互換使用。對象代表了類的一個特定的實例。對象具有身份(identity)和屬性值(attribute values)2個特徵。實例是對象的具體表示,操作可以作用於實例,實例可以有狀態地存儲操作結果。實例被用來模擬現實世界中存在的、具體的或原型的東西。
對象就是類的實例,所有的對象都是實例,但並不是所有的實例都是對象。例如,一個關聯(UML關系中的一種)的實例不是一個對象,它只是一個實例、一個連接。我們常見的實例都是類的實例,此時二者沒有區別。除了類的實例外的實例都不是對象。
Ⅳ 資料庫課程設計實例
資料庫課程設計
題目:小型超市管理系統
1、項目計劃
1.1系統開發目的
(1)大大提高超市的運作效率;
(2)通過全面的信息採集和處理,輔助提高超市的決策水平;
(3)使用本系統,可以迅速提升超市的管理水平,為降低經營成本, 提高效益,增強超市擴張力, 提供有效的技術保障。
1.2背景說明
21世紀,超市的競爭也進入到了一個全新的領域,競爭已不再是規模的競爭,而是技術的競爭、管理的競爭、人才的競爭。技術的提升和管理的升級是超市業的競爭核心。零售領域目前呈多元發展趨勢,多種業態:超市、倉儲店、便利店、特許加盟店、專賣店、貨倉等相互並存。如何在激烈的競爭中擴大銷售額、降低經營成本、擴大經營規模,成為超市營業者努力追求的目標。
1.3項目確立
針對超市的特點,為了幫助超市解決現在面臨的問題,提高小型超市的競爭力,我們將開發以下系統:前台POS銷售系統、後台管理系統,其中這兩個子系統又包含其它一些子功能。
1.4應用范圍
本系統適應於各種小型的超市。
1.5 定義
(1)商品條形碼:每種商品具有唯一的條形碼,對於某些價格一樣的商品,可以使用自定義條形碼。
(2)交易清單:包括交易的流水賬號、每類商品的商品名、數量、該類商品的總金額、交易的時間、負責本次收銀的員工號。
(3)商品積壓:在一定時期內,遠無法完成銷售計劃的商品會造成積壓。
(4)促銷:在一定時期內,某些商品會按低於原價的促銷價格銷售。
庫存告警提示:當商品的庫存數量低於庫存報警數量時發出提示。
(5)盤點:計算出庫存、銷售額、盈利等經營指標。
1.6 參考資料
《資料庫原理及設計》 陶宏才編 清華大學出版社
《SQL Server 2000 實用教程》范立南編 清華大學出版社
《SQL Server 2000 編程員指南》李香敏編 北京希望電子出版社
《輕松搞定 SQL Server 2000 程序設計》Rebecca M.Riordan編
《軟體工程規范》Watts S.Humphrey編 清華大學出版社
《軟體工程理論與實踐》 Shari Lawrence Pfleeger編 清華大學出版社
《軟體需求分析》 Swapna Kishore編 機械工業出版社
《軟體工程思想》 林銳編
2、邏輯分析與詳細分析
2.1系統功能
(1)、零售前台(POS)管理系統,本系統必須具有以下功能:
商品錄入:根據超巿業務特點制定相關功能,可以通過輸入唯一編號、掃描條形碼、商品名稱等來實現精確或模糊的商品掃描錄入。該掃描錄入方法可以充分保證各種電腦操作水平層次的人員均能准確快速地進行商品掃描錄入。
收銀業務:通過掃描條形碼或者直接輸入商品名稱(對於同類多件商品採用一次錄入加數量的方式)自動計算本次交易的總金額。在顧客付款後,自動計算找零,同時列印交易清單(包括交易的流水賬號、每類商品的商品名、數量、該類商品的總金額、交易的時間、負責本次收銀的員工號)。如果顧客是本店會員並持有本人會員卡,則在交易前先掃描會員卡,並對所購物品全部實行95折優惠,並將所購物品的總金額累計到該會員的總消費金額中。 會員卡的有效期限為一年,滿一年未續卡者,該會員卡將被注銷。
安全性:OS登陸、退出、換班與操作鎖定等許可權驗證保護;斷電自動保護最大限度防止意外及惡意非法操作。
獨立作業:有的斷網收銀即在網路伺服器斷開或網路不通的情況下,收銀機仍能正常作業
(2)、後台管理系統,本系統必須具備以下功能
進貨管理: 根據銷售情況及庫存情況,自動制定進貨計劃(亦可手工制定修改),可以避免盲目進貨造成商品積壓。 按計劃單有選擇性地進行自動入庫登記。 綜合查詢列印計劃進貨與入庫記錄及金額。
銷售管理: 商品正常銷售、促銷與限量、限期及禁止銷售控制。 綜合查詢各種銷售明細記錄、各地收銀員收銀記錄以及交結賬情況等。 按多種方式統計生成銷售排行榜,靈活察看和列印商品銷售日、月、年報表。
庫存管理: 綜合查詢庫存明細記錄。 庫存狀態自動告警提示。如庫存過剩、少貨、缺貨等。軟體為您預警,避免庫存商品積壓損失和缺貨。 庫存自動盤點計算。
人員管理: 員工、會員、供貨商、廠商等基本信息登記管理。 員工操作許可權管理。 客戶銷售許可權管理。
(3)系統結構
系統總體結構
模塊子系統結構
功能描述:商品錄入子系統要求能快速錄入商品,因此必須支持條形碼掃描。
功能描述:收銀業務子系統能計算交易總額,列印交易清單,並根據會員卡打折。
功能描述:進貨管理子系統可以根據庫存自動指定進貨計劃,進貨時自動等級,以及提供查詢和列印計劃進貨與入庫記錄的功能。
功能描述:銷售管理子系統可以控制某商品是否允許銷售,查詢每種商品的銷售情況並產生年、月、日報表,同時可以生成銷售排行榜。
功能描述:庫存管理子系統提供查詢庫存明細記錄的基本功能,並根據庫存的狀態報警,以及自動盤點計算。
功能描述:人員管理子系統提供基本信息登記管理,員工操作許可權管理,客戶銷售許可權管理的功能。
2.2、流程圖
前台管理系統
頂層DFD圖
第0層DFD圖
第1層DFD圖
2.3、戶類型與職能
(1)、員工(營業員):
通過商品條形碼掃描輸入商品到購買清單
操作軟體計算交易總金額
操作軟體輸出交易清單
對會員進行會員卡掃描以便打折
(2)、:超市經理
操作軟體錄入商品,供貨商,廠商
操作軟體制定進貨計劃
查詢列印計劃進貨與入庫記錄
操作軟體控制商品銷售與否
查詢列印銷售情況
操作軟體生成銷售排行榜
查詢庫存明細記錄
根據軟體發出的庫存告警進行入貨
操作軟體進行盤點計算
(3)、總經理:
基本信息登記管理
員工操作許可權管理
客戶銷售許可權管理
2.4、統開發步驟
確定參與者和相關的用況
為每個用況設計過程
建立順序圖,確定每個腳本中對象的協作
創建類,確定腳本中的對象
設計, 編碼, 測試, 集成類
為過程編寫系統測試案例
運行測試案例,檢驗系統
2.5、系統環境需求
系統模式
本系統採用C/S模式作為開發模式
硬體環境
伺服器端:
高性能的計算機一台,
普通的雙絞線作為連接。
客戶端: 普通的計算機或者工作站,
普通的雙絞線作為連接。
軟體環境
伺服器端:安裝SQL Server 2000的伺服器版本,
安裝windows 2000伺服器版本,
配置了諾頓等必須的防毒軟體。
客戶端: 安裝SQL Server2000的伺服器版本,
安裝了VB等可視化開發工具軟體,
安裝windows2000伺服器版本。
2.6、系統安全問題
信息系統盡管功能強大,技術先進,但由於受到自身體系結構,設計思路以及運行機制等限制,也隱含許多不安全因素。常見因素有:數據的輸入,輸出,存取與備份,源程序以及應用軟體,資料庫,操作系統等漏洞或缺陷,硬體,通信部分的漏洞,企業內部人員的因素,病毒,「黑客」等因素。因此,為使本系統能夠真正安全,可靠,穩定地工作,必須考慮如下問題:為保證安全,不致使系統遭到意外事故的損害,系統因該能防止火,盜或其他形式的人為破壞。
系統要能重建
系統應該是可審查的
系統應能進行有效控制,抗干擾能力強
系統使用者的使用許可權是可識別的
3、基於UML的建模
3.1語義規則
用例模型(use cases view)(用例視圖)的基本組成部件是用例(use case)、角色(actor)和系統(system)。用例用於描述系統的功能,也就是從外部用戶的角度觀察,系統應支持哪些功能,幫助分析人員理解系統的行為,它是對系統功能的宏觀描述,一個完整的系統中通常包含若干個用例,每個用例具體說明應完成的功能,代表系統的所有基本功能(集)。角色是與系統進行交互的外部實體,它可以是系統用戶,也可以是其它系統或硬體設備,總之,凡是需要與系統交互的任何東西都可以稱作角色。系統的邊界線以內的區域(即用例的活動區域)則抽象表示系統能夠實現的所有基本功能。在一個基本功能(集)已經實現的系統中,系統運轉的大致過程是:外部角色先初始化用例,然後用例執行其所代表的功能,執行完後用例便給角色返回一些值,這個值可以是角色需要的來自系統中的任何東西。
UML:是一種標準的圖形化建模語言,它是面向對象分析與設計的一種標准表示;它不是一種可視化的程序設計語言而是一種可視化的建模語言;不是工具或知識庫的規格說明而是一種建模語言規格說明是一種表示的標准;不是過程也不是方法但允許任何一種過程和方法使用它。
用例(use case):
參與者(actor):
3.2、UML模型
3.21、系統UML模型
3.22、子系統UML模型
(1)零售前台(POS)管理系統用例視圖
(2)後台管理系統用例視圖
3.3、系統實現圖
4、超市銷售系統概念設計文檔
(1)、系統ER圖
(2)、系統ER圖說明
1) 商店中的所有用戶(員工)可以銷售多種商品,每種商品可由不同用戶(員工)銷售;
2) 每個顧客可以購買多種商品,不同商品可由不同顧客購買;
3) 每個供貨商可以供應多種不同商品,每種商品可由多個供應商供應。
(3)、視圖設計
1) 交易視圖(v_Dealing)——用於查詢交易情況的視圖;
2) 計劃進貨視圖(v_PlanStock)——用於查詢進貨計劃的視圖;
3) 銷售視圖(v_Sale)——用於查詢銷售明細記錄的視圖;
4) 入庫視圖(v_Stock)——用於查詢入庫情況的視圖。
5、邏輯設計文檔
(1)、系統關系模型
a) 商品信息表(商品編號,商品名稱,價格,條形碼,促銷價格,促銷起日期,促銷止日期,允許打折,庫存數量,庫存報警數量,計劃進貨數,允許銷售,廠商編號,供貨商編號)
b) 用戶表(用戶編號,用戶名稱,用戶密碼,用戶類型)
c) 會員表(會員編號,會員卡號,累積消費金額,注冊日期)
d) 銷售表(銷售編號,商品編號,銷售數量,銷售金額,銷售日期)
e) 交易表(交易編號,用戶名稱,交易金額,會員卡號,交易日期)
f) 進貨入庫表(入庫編號,入庫商品編號,入庫數量,單額,總額,入庫日期,計劃進貨日期,入庫狀態)
g) 供貨商表(供貨商編號,供貨商名稱,供貨商地址,供貨商電話)
h) 廠商表(廠商編號,廠商名稱,廠商地址,廠商電話)
(2)、系統資料庫表結構
資料庫表索引
表名 中文名
MerchInfo 商品信息表
User 用戶表
Menber 會員表
Sale 銷售表
Dealing 交易表
Stock 進貨入庫表
Provide 供貨商表
Factory 廠商表
商品信息表(MerchInfo)
欄位名 欄位類型 長度 主/外鍵 欄位值約束 對應中文名
MerchID int 4 P Not null 商品編號
MerchName Varchar 50 Not null 商品名稱
MerchPrice Money 4 Not null 價格
MerchNum Int 4 Not null 庫存數量
CautionNum Int 4 Not null 庫存報警數量
PlanNum Int 4 null 計劃進貨數
BarCode Varchar 50 Not null 條形碼
SalesProPrice Money 4 促銷價格
SalesProDateS Datetime 8 促銷起日期
SalesProDateE Datetime 8 促銷止日期
AllowAbate Int 4 Not null 允許打折
AllowSale Int 4 Not null 允許銷售
FactoryID Varchar 10 F Not null 廠商編號
ProvideID Varchar 10 F Not null 供貨商編號
用戶表(User)
欄位名 欄位類型 長度 主/外鍵 欄位值約束 對應中文名
UserID varchar 10 P Not null 用戶編號
UserName Varchar 25 Not null 用戶名稱
UserPW Varchar 50 Not null 用戶密碼
UserStyle Int 4 Not null 用戶類型
會員表(Menber)
欄位名 欄位類型 長度 主/外鍵 欄位值約束 對應中文名
MemberID Varchar 10 P Not null 會員編號
MemberCard Varchar 20 Not null 會員卡號
TotalCost Money 4 Not null 累積消費金額
RegDate Datetime 8 Not null 注冊日期
銷售表(Sale)
欄位名 欄位類型 長度 主/外鍵 欄位值約束 對應中文名
SaleID Varchar 10 P Not null 銷售編號
MerChID Varchar 10 F Not null 商品編號
SaleDate Datetime 8 Not null 銷售日期
SaleNum Int 4 Not null 銷售數量
SalePrice Money 4 Not null 銷售單額
交易表(Dealing)
欄位名 欄位類型 長度 主/外鍵 欄位值約束 對應中文名
DealingID Varchar 10 P Not null 交易編號
DealingPrice Money 4 Not null 交易金額
DealingDate Money 4 Not null 交易日期
MemberID Varchar 10 會員卡號
UserName Varchar 10 F Not null 用戶名稱
入庫紀錄表(Stock)
欄位名 欄位類型 長度 主/外鍵 欄位值約束 對應中文名
StockID Varchar 10 P Not null 入庫編號
MerchID Varchar 10 F Not null 入庫商品編號
MerchNum Int 4 Not null 入庫數量
MerchPrice Money 4 Not null 單額
TotalPrice Money 4 Not null 總額
StockDate Datetime 8 Datetime 入庫日期
PlanDate Datetime 8 Datetime 計劃進貨日期
StockState Int 4 Not null 入庫狀態
供貨商表(Provide)
欄位名 欄位類型 長度 主/外鍵 欄位值約束 對應中文名
ProvideID varchar 10 P Not null 供貨商編號
ProvideName Varchar 50 Not null 供貨商名稱
ProvideAddress Varchar 250 供貨商地址
ProvidePhone Varchar 25 供貨商電話
廠商表(Provide)
欄位名 欄位類型 長度 主/外鍵 欄位值約束 對應中文名
FactoryID varchar 10 P Not null 廠商編號
FactoryName Varchar 50 Not null 廠商名稱
FactoryAddress Varchar 250 廠商地址
FactoryPhone Varchar 25 廠商電話
6、物理設計文檔
/*----------創建資料庫----------*/
create database SuperMarketdb
on primary
(
name=SuperMarketdb,
filename='C:\Program Files\Microsoft SQL Server\MSSQL\Data\SuperMarketdb.mdf',
size=100MB,
maxsize=200MB,
filegrowth=20MB
)
log on
(
name=SuperMarketlog,
filename='C:\Program Files\Microsoft SQL Server\MSSQL\Data\SuperMarketdb.ldf',
size=60MB,
maxsize=200MB,
filegrowth=20MB
)
go
/*----------創建基本表----------*/
use [SuperMarketdb]
go
/*創建交易表*/
CREATE TABLE Dealing (
DealingID int identity(1,1) Primary key ,
DealingDate datetime NOT NULL ,
DealingPrice money NOT NULL ,
UserName varchar(25) NULL ,
MemberCard varchar(20) NULL
)
GO
/*創建廠商表*/
CREATE TABLE Factory (
FactoryID varchar(10) Primary key ,
FactoryName varchar(50) NOT NULL ,
FactoryAddress varchar(250) NULL ,
FactoryPhone varchar(50) NULL
)
GO
/*創建會員表*/
CREATE TABLE Member (
MemberID varchar(10) Primary key ,
MemberCard varchar(20) NOT NULL ,
TotalCost money NOT NULL ,
RegDate datetime NOT NULL
)
GO
/*創建商品信息表*/
CREATE TABLE MerchInfo (
MerchID int identity(1,1) Primary key ,
MerchName varchar(50) Unique NOT NULL ,
MerchPrice money NOT NULL ,
MerchNum int NOT NULL ,
CautionNum int NOT NULL ,
PlanNum int NOT NULL ,
BarCode varchar(20) Unique NOT NULL ,
SalesProPrice money NULL ,
SalesProDateS datetime NULL ,
SalesProDateE datetime NULL ,
AllowAbate int NOT NULL ,
AllowSale int NOT NULL ,
FactoryID int NOT NULL ,
ProvideID int NOT NULL
)
GO
/*創建供應商表*/
CREATE TABLE Provide (
ProvideID varchar(10) Primary key ,
ProvideName varchar(50) NOT NULL ,
ProvideAddress varchar(250) NULL ,
ProvidePhone varchar(25) NULL
)
GO
/*創建銷售表*/
CREATE TABLE Sale (
SaleID int identity(1,1) Primary key ,
MerChID int NOT NULL ,
SaleDate datetime NOT NULL ,
SaleNum int NOT NULL,
SalePrice money NOT NULL
)
GO
/*創建入庫表*/
CREATE TABLE Stock (
StockID int identity(1,1) Primary key ,
MerchID int NOT NULL ,
MerchNum int NOT NULL ,
MerchPrice money NULL ,
TotalPrice money NULL ,
PlanDate datetime NULL ,
StockDate datetime NULL,
StockState int NOT NULL
)
GO
/*創建用戶表*/
CREATE TABLE User (
UserID varchar(10) Primary key ,
UserName varchar(25) NOT NULL ,
UserPW varchar(50) NOT NULL ,
UserStyle int NOT NULL ,
)
GO
/*----------創建表間約束----------*/
/*商品信息表中廠商編號、供應商編號分別與廠商表、供應商表之間的外鍵約束*/
ALTER TABLE MerchInfo ADD
CONSTRAINT [FK_MerchInfo_Factory] FOREIGN KEY
(
[FactoryID]
) REFERENCES Factory (
[FactoryID]
),
CONSTRAINT [FK_MerchInfo_Provide] FOREIGN KEY
(
[ProvideID]
) REFERENCES Provide (
[ProvideID]
)
GO
/*銷售表中商品編號與商品信息表之間的外鍵約束*/
ALTER TABLE Sale ADD
CONSTRAINT [FK_Sale_MerchInfo] FOREIGN KEY
(
[MerChID]
) REFERENCES MerchInfo (
[MerchID]
) ON DELETE CASCADE
GO
/*入庫表中商品編號與商品信息表之間的外鍵約束*/
ALTER TABLE Stock ADD
CONSTRAINT [FK_Stock_MerchInfo] FOREIGN KEY
(
[MerchID]
) REFERENCES MerchInfo (
[MerchID]
) ON DELETE CASCADE
GO
/*----------創建索引----------*/
/*在交易表上建立一個以交易編號、交易日期為索引項的非聚集索引*/
CREATE nonclustered INDEX IX_Dealing ON Dealing(DealingID, DealingDate)
GO
/*在商品信息表上建立一個以商品編號為索引項的非聚集索引*/
CREATE nonclustered INDEX IX_MerchInfo ON MerchInfo(MerchID)
GO
/*在銷售表上建立一個以銷售編號、銷售日期為索引項的非聚集索引*/
CREATE nonclustered INDEX IX_Sale ON Sale(SaleID, SaleDate)
GO
/*在入庫表上建立一個以入庫編號、入庫日期、商品編號為索引項的非聚集索引*/
CREATE nonclustered INDEX IX_Stock ON Stock(StockID, StockDate, MerchID)
GO
/*----------創建視圖----------*/
/*創建用於查詢交易情況的視圖*/
CREATE VIEW v_Dealing
AS
SELECT DealingDate as 交易日期,
UserName as 員工名稱,
MemberCard as 會員卡號,
DealingPrice as 交易金額
FROM Dealing
GO
/*創建用於查詢進貨計劃的視圖*/
CREATE VIEW v_PlanStock
AS
SELECT Stock.StockID as SID,
MerchInfo.MerchName as 商品名稱,
MerchInfo.BarCode as 條形碼,
Factory.FactoryName as 廠商,
Provide.ProvideName as 供貨商,
Stock.MerchNum as 計劃進貨數量,
Stock.PlanDate as 計劃進貨日期
FROM Stock,MerchInfo,Provide,Factory
Where Stock.MerchID = MerchInfo.MerchID
and Provide.ProvideID=MerchInfo.ProvideID
and Factory.FactoryID=MerchInfo.FactoryID
and Stock.StockState=0
GO
/*創建用於查詢銷售明細記錄的視圖*/
CREATE VIEW v_Sale
AS
SELECT MerchInfo.MerchName as 商品名稱,
MerchInfo.BarCode as 條形碼,
MerchInfo.MerchPrice as 商品價格,
Sale.SalePrice as 銷售價格,
Sale.SaleNum as 銷售數量,
Sale.SaleDate as 銷售日期
FROM Sale INNER JOIN
MerchInfo ON Sale.MerChID = MerchInfo.MerchID
GO
/*創建用於查詢入庫情況的視圖*/
CREATE VIEW v_Stock
AS
SELECT MerchInfo.MerchName as 商品名稱,
MerchInfo.BarCode as 條形碼,
Factory.FactoryName as 廠商,
Provide.ProvideName as 供貨商,
Stock.MerchPrice as 入庫價格,
Stock.MerchNum as 入庫數量,
Stock.TotalPrice as 入庫總額,
Stock.StockDate as 入庫日期
FROM Stock,MerchInfo,Provide,Factory
Where Stock.MerchID = MerchInfo.MerchID
and Provide.ProvideID=MerchInfo.ProvideID
and Factory.FactoryID=MerchInfo.FactoryID
and Stock.StockState=1
GO
7、小結
和傳統管理模式相比較,使用本系統,毫無疑問會大大提高超市的運作效率,輔助提高超市的決策水平,管理水平,為降低經營成本, 提高效益,減少差錯,節省人力,減少顧客購物時間,增加客流量,提高顧客滿意度,增強超市擴張能力, 提供有效的技術保障。
由於開發者能力有限,加上時間倉促,本系統難免會出現一些不足之處,例如:
本系統只適合小型超市使用,不能適合中大型超市使用;
超市管理系統涉及范圍寬,要解決的問題多,功能復雜,實現困難,但由於限於時間,本系統只能做出其中的一部分功能;
對於以上出現的問題,我們深表歉意,如發現還有其它問題,希望老師批評指正。
Ⅳ 那個我也想要一個資料庫設計事例,就是火車售票管理SQL
目錄
概述: 5
1. 需求分析 5
1.1 用戶需求: 5
1.2 業務流程分析: 6
1.3 信息需求分析 6
1.4 功能需求分析: 7
2. (資料庫)概念(模型)設計 8
2.1構思ERD的四條原則及根據這些原則相應得出的實體、聯系及其屬性: 9
2.2、系統具體E-R圖: 9
3. (資料庫)邏輯(模型)設計 10
3.1 一般邏輯模型設計: 10
3.2 具體邏輯模型設計: 11
4. 資料庫物理設計與資料庫保護設計 12
5. 處理功能設計 12
5.1 主控模塊設計: 12
5.2 子模塊設計: 13
6. 資料庫應用系統的實現 14
6.1 資料庫及其表結構的建立: 14
6.2 創建表的相關視圖: 16
6.3 各表關系圖, 16
6.4 數據輸入:利用系統錄入數據,如下圖為各表內容: 17
6.5 模塊實現: 18
7. 資料庫應用系統運行 26
7.1 寫出系統操作使用的簡要說明。 26
7.2 按使用說明運行系統並列印出運行結果。 26
7.3 系統評價: 27
報告內容
概述:
隨著國民經濟快速發展, 人們出行、交通越來越頻繁, 對服務的快捷、便利性要求也越來越高。從而對客運行業的建設與管理提出了更高的要求。為適應和推動客運行業的發展, 各種交通公司和部門開始廣泛採用使用日趨成熟的計算機技術和資料庫技術來實現票務信息的現代化管理,具有手工管理所無法比擬的優點,如:檢索迅速,查找方便,可靠性高,存儲量大,保密性好,壽命長,成本底等。這些優點能夠極大地提高信息管理和業務管理的效率。
本學生火車訂票系統正是通過資料庫存儲信息實現高效率管理。該實驗設計首先進行需求分析,然後在需求文檔的指導下實現系統的功能,如操作員的信息管理功能及普通學生的火車信息查詢、訂票、退票等功能,最終實現的是學生購得一張自己滿意的票券,同時力求通過資料庫系統及計算機在其中的運用達到提高工作效率,節約人力資源的效果。
1. 需求分析
1.1 用戶需求:
(一)、問題描述:
學生火車票定票系統
(1)背景:一年兩次的火車票訂票管理
(2)主要實現以下功能:
1)學生基本信息的管理,尤其是所在地
2)學生購票的基本信息,尤其是價錢和車票目的地
3)購票以後的分發管理
4)退票的管理
5)信息的統計和查詢
6)操作員管理
(二)、目的及現狀:
1)、實驗目的:
資料庫設計就是要使學生採用本課程中學習的資料庫設計方法,運用其基本思路與主要圖表工具完成一個自己所了解的業務的資料庫應用系統信息需求分析與資料庫的概念設計、邏輯設計、物理設計以及處理功能設計,用自己熟悉的資料庫管理系統、程序設計語言及其相關開發工具實現該系統,並運行、評價、改進之;在此基礎上嚴格按本大綱所附報告提綱撰寫課程設計報告。通過本設計進一步弄懂資料庫系統及其相關的基本概念,理解資料庫系統的系統結構、主要特點,掌握資料庫設計的原理、方法及其基本過程,初步具備資料庫應用設計的能力,初步形成運用資料庫應用系統解決管理決策中的實際問題的基本素質。
2)、現狀和系統要求:
在傳統模式下利用人工進行火車訂票業務,存在著較多的缺點,如:效率底,保密性差,時間一長將產生大量的文件和數據,更不便於查找,更新,維護等。諸如這些情況,給各相關部門工作人員帶來了很大困難,嚴重影響了他們的工作效率。運用計算機技術和資料庫技術來實現票務信息的現代化管理,具有手工管理所無法比擬的優點,如:檢索迅速,查找方便,可靠性高,存儲量大,保密性好,壽命長,成本底等。這些優點能夠極大地提高信息管理和業務管理的效率。
在本系統中,系統用戶共有兩種, 並根據用戶許可權的不同而實現不同的功能,如操作員
擁有添加、修改、刪除某火車相關信息及修改自己的個人信息的功能。學生有對車票信息、、哪一車次哪天還剩餘多少張票和自己所訂票券的查詢功能,訂票功能及退票功能。系統利用計算機和資料庫的高效率大大減輕了學校票點工作人員的勞動強度, 提高了各部門的工作效率。
1.2 業務流程分析:
(一)、描述系統的業務流程:
本系統共有兩種用戶, 根據用戶許可權的不同而實現不同的功能。
操作員的許可權最大,他進入系統必須先登錄。操作員可以添加、修改、刪除某車票的相關信息,可以修改自己的個人信息;查詢、刪除學生的訂票情況,確認學生是否已付款取票等。
學生可以按目的地的車次對車票信息進行查詢,可以訂票,訂票時須錄入自己的信息及所選擇的車次,系統將檢查該車次票數是否已訂完或不足,若已訂完或不足則提示錯誤信息並返回到訂票界面,訂票成功後將生成訂票單。學生還可以對自己所訂的票券即訂票單進行查詢,以及查詢哪一車次哪天還剩餘多少張票。用戶付款和取票可在學校票點完成。
(二)、初步業務流程圖:
1.3 信息需求分析
1.3.1 資料收集
1.3.2 事項分析:
在本火車票訂票系統中,各資料的基本數據項列舉如下:
學生資料:學號,姓名,密碼,所在學院,專業,班級,電話,目的城市
車票基本信息:車次號,出發站,開車時間,到達站,到達時間,車票種類,余票數
車次詳細信息:ID號,車次號,途徑站,票價,
訂票單信息:訂單號,訂票人學號,訂單時間,付款取票與否
訂票具體信息:ID號,訂單號,所得車次號,目的城市,訂票數,總票價,取票時間
訂票點信息:票點號,票點主任的員工號,聯系電話,所在校區
操作員資料:員工號,票點號,密碼,姓名,性別,電話
1.4 功能需求分析:
(一)、完善業務流程圖:
(二)、功能層次圖:
本系統共有兩種用戶, 根據用戶許可權的不同而實現不同的功能,如操作員查詢、添加、修改、刪除某火車相關信息及查詢、修改自己的個人信息的功能。學生對車票信息、、哪一車次哪天還剩餘多少張票和訂票功能以及對自己所訂票券的查詢功能、退票功能。
2. (資料庫)概念(模型)設計
2.1構思ERD的四條原則及根據這些原則相應得出的實體、聯系及其屬性:
① 原則1 (確定實體):能獨立存在的事物,例如人、物、事、地、團體、機構、活動、事項等等,在其有多個由基本項描述的特性需要關注時,就應把它作為實體。
在本系統中,實體主要有學生、操作員、車票信息、車票詳細信息表、訂票單,訂票詳細信息表,訂票點。
②原則2 (確定聯系):兩個或多個實體間的關聯與結合,如主管,從屬,組成,佔有,作用,配合,協同等等,當需要予以關注時,應作為聯系。實體間的聯系可分為一對一、一對多、多對多等三類,在確定聯系時還要確定其類型。
在本系統中,學生、車票信息、訂票單和訂票詳細信息表之間存在「訂購」的聯系,一個車票信息可以被多個學生購買,而一個學生只可以購買多個車次所屬的一到兩張車票,它們之間的聯系是一對多的「購買」聯系,同時一次登錄無論訂多少車次只生成一張訂票單。訂票點和操作員之間存在「隸屬」的聯系,它們之間的聯系是一對多的「隸屬」聯系;車票信息和車票詳細信息表之間存在「包含」與被包含的關系;訂票單和訂票詳細信息表之間也存在「包含」與被包含的關系。
③原則3 (確定屬性):實體的屬性是實體的本質特徵。實體應有標識屬性(能把不同個體區分開來的屬性組),並指定其中一個作為主標識。聯系的屬性是聯系的結果或狀態。
從這條原則可得到實體和聯系的屬性如下:
學生(學號,姓名,密碼,所在學院,專業,班級,電話,目的城市)
車票基本信息(車次號,出發站,開車時間,到達站,到達時間,車票種類,余票數)
車次詳細信息(ID號,車次號,途徑站,票價)
訂票單信息(訂單號,訂票人學號,訂單時間,付款取票與否)
訂票具體信息(ID號,訂單號,所得車次號,目的城市,訂票數,總票價,取票時間)
訂票點(票點號,票點主任的員工號,所在校區,電話)
操作員(員工號,票點號,密碼,姓名,性別,電話)
④原則4(一事一地):信息分析中得到的基本項要在且僅在實體聯系圖中的一個地方作為屬性出現。
根據以上的分析,可以畫出本系統的原始ERD的基本結構。如
2.2、系統具體E-R圖:
3. (資料庫)邏輯(模型)設計
3.1 一般邏輯模型設計:
(一)、由ERD導出一般關系模型的四條原則:
原則1(實體轉換為關系模式):ERD中每個獨立的實體轉換為一個關系模式,實體的屬性組成關系的屬性,實體的主標識轉換成關系的主碼。
原則2(從實體及其主從聯系轉換為關系模式):ERD中一個從實體及其主從聯系轉換為一個關系,從實體的屬性及其主實體關系的屬性組成的屬性,其主實體關系的主碼,在主從關系聯系為一對多聯系時還要加上可把同一主實體個體所對應的從實體個體區分開來的,從實體的一組屬性,作為該關系的主碼。對子類實體可作類似一對一聯系的從實體的轉換。
原則3(一對多聯系在關系模式中的表示):ERD中的一個一對多聯系通過在其「多」實體關繫上增加「1」實體關系的主碼(作為外碼)和聯系本身的屬性來表示。
原則4(多對多聯系轉換為關系):ERD中的一個多對多聯系轉換為一個關系,其被聯系實體關系的主碼和該聯系本身的屬性一起組成的屬性,被聯系關系的主碼組成該關系的復合主碼。
(二)、資料庫初步構思的關系框架:
通過ERD轉換為一般關系模型四條原則分析,得到須在資料庫中進行存儲的一般關系模型如下(帶下劃線的為主碼,帶#的為外鍵):
學生(學號,姓名,密碼,所在學院,專業,班級,電話,目的城市)
車票基本信息(車次號,出發站,開車時間,到達站,到達時間,車票種類,余票數)
車次詳細信息(ID號,車次號#,途徑站,票價)
訂票單信息(訂單號,訂票人學號#,訂單時間,付款取票與否)
訂票具體信息(ID號,訂單號#,所得車次號#,目的城市,訂票數,總票價,取票時間)
訂票點(票點號,票點主任的員工號#,所在校區)
操作員(員工號,密碼,姓名,性別,電話)
3.2 具體邏輯模型設計:
(1)、Student表:用來保存學生信息:
項名 類型 長度 小數位 值域 主鍵 外鍵 空鍵
學號 字元 12 是 非空
姓名 字元 20 非空
密碼 字元 12 非空
學院 字元 40 非空
專業 字元 30 非空
班級 數據 4 0 >0 非空
電話 字元 12 非空
目的城市 字元 30 非空
(2)、Ticket表:用來保存車票信息表
項名 類型 長度 小數位 值域 主鍵 外鍵 空鍵
車次號 字元 20 是 非空
出發站 字元 30 非空
開車時間 日期 8 非空
到達站 字元 30 非空
到達時間 日期 8 非空
車票種類 字元 20 非空
余票數 數據 8 0 >0 非空
(3)、Citysite表:用來保存車票詳細信息表:
項名 類型 長度 小數位 值域 主鍵 外鍵 空鍵
ID號 整數,自動編號 8 是 非空
車次號 字元 20 是 非空
途徑城市 字元 30 非空
票價 decimal 非空
(4)、Ticketsite表:用來保存訂票點表:
項名 類型 長度 小數位 值域 主鍵 外鍵 空鍵
票點號 整數,自動編號 8 0 是 非空
票點主任員工號 整數,自動編號 8 0 是 非空
聯系電話 字元 12 非空
所在校區 字元 40 非空
(5)、Admin表:用來保存操作員表:
項名 類型 長度 小數位 值域 主鍵 外鍵 空鍵
員工號 整數,自動編號 8 0 是 非空
用戶名 字元 20 非空
密碼 字元 12 非空
姓名 字元 20 非空
性別 字元 4 非空
電話 字元 12 非空
(6)、Book表:用來保存訂單表:
項名 類型 長度 小數位 值域 主鍵 外鍵 空鍵
訂單號 整數,自動編號 8 0 是 非空
學號 字元 是 非空
訂單時間 字元 非空
付款取票與否 整數 2 0 非空
(7)、Ticket表:用來保存取票單表:
項名 類型 長度 小數位 值域 主鍵 外鍵 空鍵
ID號 整數,自動編號 8 0 是 非空
取票號 字元 8 0 是 非空
車次號 字元 是 非空
目的城市 字元 非空
訂票數 數據 8 0 >0 非空
總票價 Decimal 非空
取票時間 日期 8 非空
4. 資料庫物理設計與資料庫保護設計
根據表的結構關系,本系統採用SQL Server 2000資料庫。SQL Server 2000是微軟公司關系型資料庫產品,它是在由MS SQL Server 7.0建立的堅固基礎之上產生的。客戶的需求極大的推動了該產的革新,SQL Server2000在易用性、可縮放性和可靠性,以及數據倉庫等諸多方面有了很大的增強。這使得SQL Server 2000在很多資料庫產品發展最快的應用領域(如電子商務、移動計算、分支自動化、商業級應用和數據交換中心等)中成為領先者
在資料庫中創建表的同時須創建相關的索引。索引就是加快檢索表中數據的方法。資料庫的索引類似於書籍的索引。在書籍中,索引允許用戶不必翻閱完整個書就能迅速地找到所需要的信息。在資料庫中,索引也允許資料庫程序迅速地找到表中的數據,而不必掃描整個資料庫。本資料庫表較為簡單,且每個表中定義主鍵約束或者唯一性鍵約束,已經間接創建了索引,故無需再創建索引。
5. 處理功能設計
5.1 主控模塊設計:
(1)、登錄系統模塊:
在登錄窗體界面中,你可以輸入代碼和密碼,選擇你的身份(操作員或系統管理員),確認後就可進入主界面窗體。如果你是學生,且還沒注冊,可以在此窗體界面上點擊「注冊」,在注冊界面輸入所要求的項,確定後重新返回登錄界面,用你剛注冊的賬號登錄進入主界面。
在主界面中包含上述模塊圖的幾部分,根據身份,即是用戶或者管理員,對應許可權不同,分為不同的主界面,即用戶主界面和管理員主界面。
(2)、系統設置模塊圖:
用戶:在此模塊用戶可以查詢、修改自身注冊信息以及退出登錄,退出系統後將返回登錄界面。
管理員模塊:在此模塊管理員除了擁有用戶的各項設置外還可以注冊新的管理員,但為了安全起見,此功能只有當登錄人是票點主任時才可執行。
5.2 子模塊設計:
5.2.1、管理員模塊
1、車票信息管理模塊:在此模塊,管理員可以執行車票信息錄入、查詢、刪除和修改功能,不過刪除和修改功能須當該車次沒有被預訂的情況下才可執行。
2、訂票管理模塊:在此模塊,管理員可以查詢所有訂單情況、已付款取票和未付款取票的訂單情況,還可以按學號查詢某學生的訂票情況以及各種統計信息,並在學生來付款取票時執行「付款」操作。另外還可以在訂單已付款或學生取消訂單時刪除訂單。
5.2.2、用戶模塊:
1、訂票管理模塊:在此模塊,用戶可以查詢車票信息和自身訂票情況。查詢車票情況分為按車次、按目的地、按起始站—目的站查詢,當查詢到自身所想要的車票時即可訂票,但注意預定票的目的地須與學生家鄉所在城市相符,否則系統不允許訂票;查詢自身訂票情況包括訂單信息及金額統計,還須注意訂票信息上要求的取票期限,訂票人須在規定期限內去所在校區的票點付款取票,逾期票點工作人員將不予處理。
2、用戶小貼士模塊:在這里,用戶將了解本訂票系統的訂票流程及相關規定及用戶訂票後付款取票地點的信息等。
6. 資料庫應用系統的實現
6.1 資料庫及其表結構的建立:
利用SQLServer企業管理器創建資料庫Tickets,然後創建表:
1、學生表Book
create table Student
(Sno varchar(12) primary key, Sname varchar(20) not null,
Ssex varchar(4) not null, Spw varchar(12) not null, //密碼
Sadm varchar(40) not null, //學院
Sdept varchar(30) not null, Sclass numeric(4) not null,
Stel varchar(12) not null, //電話
Semail varchar(50) not null, Shcity varchar(30) not null //所在地
);
2、車票信息表Ticket
create table Ticket
(Tno varchar(20) primary key, //車次號
Startcity varchar(30) not null, Starttime varchar(20) not null,
Endcity varchar(100) not null, Endtime varchar(20) not null,
Ttype varchar(20) CHECK (Ttype IN('硬座','軟座','硬卧','軟卧')),
Tickets int not null //票數
);
3、車次站次信息表Citysite
create table Citysite
(Cityno numeric(8) identity(1,1), //票點號
Tno varchar(20), City varchar(100),
Tprice decimal not null, //票價
primary key (Cityno,Tno),
foreign key (Tno) references Ticket(Tno) on delete cascade
)
4、訂票單表Book
create table Book
(Bno numeric(8) identity(1,1) primary key, Sno varchar(12),
Maketime datetime not null, judge int,
foreign key (Sno) references Student(Sno),);
5、訂票詳細信息表Bookno
create table Bookno
(ID numeric(8) identity(1,1) primary key,
Bno numeric(8), Tno varchar(20), City varchar(100),
Booktime varchar(20) not null, Ticketnums int not null,
Price decimal not null, //票價
Pickdate datetime not null, foreign key (Tno) references Ticket(Tno),
foreign key (Bno) references Book(Bno));
6、操作員表Operater
create table Operater
(Adname varchar(20) primary key, //登錄用戶名
Adpw varchar(12) not null, //登錄密碼
Opname varchar(20) not null, //員工真實姓名
Opsex varchar(4) not null, Optel varchar(12) not null,
Opemail varchar(50) not null);
7、訂票點表Ticketsite
create table Ticketsite
(Siteno numeric(8) primary key identity, //票點號
Adname varchar(20), // 票點主任登錄名
Sitetel varchar(12) not null, Siteaddr varchar(40),
foreign key (Adname) references Operater(Adname));
//為安全起見,學校各校區訂票點內容的添加要以直接輸入資料庫的方式進行
insert into Ticketsite(Adname,Sitetel,Siteaddr) values('linyp','870432','龍洞校區行政樓205')
insert into Ticketsite(Adname,Sitetel,Siteaddr) values('admin','87084432','大學城校區E區205')
6.2 創建表的相關視圖:
1、創建V_Book視圖,得到對於某種車票的訂票人數和訂票張數
create view V_Book(Tno,stu_no,sumticket)
as
select Tno,count(distinct Sno),sum(Ticketnums) from Bookno,Book
where Bookno.Bno=Book.Bno group by Tno
2、創建W_Book視圖,得到對於所有訂票學生的人數和訂票總張數
create view W_Book(stu_nums,sumtickets)
as select count(distinct Sno),sum(Ticketnums) from Bookno,Book
where Bookno.Bno=Book.Bno
3、創建P_Book視圖,得到對於已付款取票的人數和車票總張數
create view P_Book(cout_no,cout_nums)
as select count(distinct Sno),sum(Ticketnums) from Bookno,Book
where Bookno.Bno=Book.Bno and judge=1
4、創建M_Book視圖, 得到對於某一訂票的總金額
create view M_Book(Allprice)
as select sum(Tprice*Ticketnums) from Book,Bookno,Citysite
where Bookno.Bno=Book.Bno and Bookno.Tno=Citysite.Tno and Bookno.City=Citysite.City
6.3 各表關系圖,
易知表Ticket與表Citysite之間是父表與子表的關系:
表Book與表Bookno之間也是父表與子表的關系:
它們之間都是父表對子表的一對多的關系。
根據表之間的結構關系圖,可以得出各表的完整性約束條件如下圖:
表名 主鍵列名 外鍵
外鍵列名 參照表
Student Sno 無
Ticket Tno 無
Citysite Cityno Tno Ticket
Book Bno Sno Student
Bookno ID Bno,Tno Book,Ticket
Operater Adname 無
Ticketsite Siteno Adname Operater
6.4 數據輸入:利用系統錄入數據,如下圖為各表內容:
6.5 模塊實現:
本次系統設計我前台採用JSP技術,後台採用SQL Server 2000,操作系統採用Windows XP。
JSP(JavaServer Pages)是由Sun Microsystems公司倡導、許多公司參與一起建立的一種動態網頁技術標准,它是在傳統的網頁HTML文件(*.htm,*.html)中插入Java程序段(Scriptlet)和JSP標記(tag),從而形成JSP文件(*.jsp)。JSP具備了Java技術的簡單易用,完全的面向對象,具有平台無關性且安全可靠,主要面向網際網路的所有特點。
Ⅵ SQLServer資料庫實例教程的目錄
第1章 「HcitPos管理系統」教學案例功能簡介
第2章 資料庫設計
第3章 SQL Server 2005資料庫基本操作
第4章 資料庫表操作
第5章 查詢操作
第6章 視圖與索引操作
第7章 T-SQL編程、游標和事務操作
第8章 存儲過程與觸發器操作
第9章 資料庫備份與安全管理操作
Ⅶ sql server有幾個資料庫實例
1、master:它包含一個系統表集合,是整個實例的中央存儲庫,維護登錄賬戶,其他資料庫,文件分布,系統配置設置,磁碟空間,資源消耗,端點和
2、鏈接伺服器等方面的信息。它記錄SQL2005初始化信息,所以它對實例極為重要。在創建,修改或刪除用戶資料庫,更改伺服器或任何資料庫配置,以及修改或添加用戶賬戶後都要備份該資料庫。
3、model:它是SQL2005實例中所有新建資料庫的模板。執行create database 命令時SQL2005會簡單地將該模板資料庫中的內容復制到新建資料庫中,如果希望新建的每個資料庫都帶有表,存儲過程,資料庫選項和許可等,那麼可以在Model資料庫中加入這些元素,此後再新建資料庫時就會添加這些元素。
4、msdb:該庫供SQLserver實例--主要是SQLServer代理使用來存儲計劃的任務,修改和備份、還原歷史信息。對自動化任務和DTS作了某些修改的命令時需要備份它。
5、tempdb:它是SQL2005用於各種操作的實例范圍的臨時工作空間。
6、resource:它是SQL2005新引入的資料庫,是只讀的。包含所有的系統對象,如系統存儲過程,系統擴展存儲過程和系統函數等。
當master資料庫被破壞並且沒有可用的備份時,可以使用自動設置中的Rebuild database選項將其恢復成實例安裝後的狀態。
必須經過認真考慮後才能使用該操作,因為它會清除包括所有登錄在內的所有伺服器相關的配置,從而不得不從頭開始重做所有的事情。