《數(shù)據(jù)庫原理及應用》課程設計

南縣ssl適用于網(wǎng)站、小程序/APP、API接口等需要進行數(shù)據(jù)傳輸應用場景,ssl證書未來市場廣闊!成為成都創(chuàng)新互聯(lián)的ssl證書銷售渠道,可以享受市場價格4-6折優(yōu)惠!如果有意向歡迎電話聯(lián)系或者加微信:028-86922220(備注:SSL證書合作)期待與您的合作!
數(shù)據(jù)庫原理課程設計任務書
一、目的
1. 掌握計算機管理信息系統(tǒng)設計的一般方法,主要包括系統(tǒng)分析、系統(tǒng)設計的組織和實施。
2. 關系型數(shù)據(jù)庫管理系統(tǒng)的編程技術,并能獨立完成一般小系統(tǒng)的程序設計、調(diào)試運行等工作。
3. 培養(yǎng)把所學知識運用到具體對象,并能求出解決方案的能力。
二、任務(任選其一)
A.運用關系型數(shù)據(jù)庫管理系統(tǒng),實現(xiàn)本院圖書館管理信息系統(tǒng)。具體要求如下:
—圖書、資料的登記、注銷和查詢。
—借書證管理,包括申請、注銷借書證,查詢借書證持有人等。
—借還圖書、資料的登記、超期處理,超期拒借等。
—圖書、資料查詢,借、還圖書和資料情況查詢。
—圖書、資料借閱情況的統(tǒng)計分析,拒此作為圖書館圖書、資料訂夠的依據(jù)之一。(本項不作為基本要求)
B. 運用關系型數(shù)據(jù)庫管理系統(tǒng),實現(xiàn)服務電話管理系統(tǒng)
向客戶現(xiàn)場派技術人員的服務公司可以用服務電話管理系統(tǒng)跟蹤客戶、員工、工作訂單、發(fā)票、付款等等。
要求:
數(shù)據(jù)庫要存儲以下信息:
—客戶信息
—客戶工需單信息
—完成工需單所需人工
—完成工需單所需部件
—部件信息
—付款信息
—雇員信息
完成的功能:
—輸入/查看 客戶工需單信息
—輸入/查看部件、雇員等其它信息
—付款
—打印發(fā)票等
三、結果形式
1. 設計報告:含E-R圖、數(shù)據(jù)字典、關系模式、關系實例、查詢描述、關系代數(shù)、SQL實現(xiàn)的查詢語言及查詢結果。
2. 上機實現(xiàn)。
四、考核
1. 課程設計態(tài)度(20分)。
2. 遞交的書面材料(40分)。
3. 上機運行情況(40分)
目錄
1.問題描述 2
1.1背景 2
1.2數(shù)據(jù)需求 2
1.3事物需求 3
1.4關系模式 3
2.方案圖表設計 3
2.1 E-R圖 3
2.2數(shù)據(jù)流程圖 8
2.3數(shù)據(jù)字典 9
2.4關系圖: 11
3.數(shù)據(jù)庫源代碼 12
3.1數(shù)據(jù)庫建立 12
3.2數(shù)據(jù)初始化 14
4.結果數(shù)據(jù)處理 17
4.1單表查詢 17
4.2超期處理 19
4.3還書操作 20
4.4借書操作 22
4.5書籍狀態(tài) 24
4.6讀者狀態(tài) 24
5.結束語 26
5.1課程設計心得 26
1.問題描述
1.1背景
隨著圖書館規(guī)模的不斷擴大,圖書數(shù)量也相應的增加,有關圖書的各種信息量也成倍增加,面對著龐大的信息量,傳統(tǒng)的人工方式管理會導致圖書館管理上的混亂,人力與物力過多浪費,圖書館管理費用的增加,從而使圖書館的負擔過重,影響整個圖書館的運作和控制管理,因此,必須制定一套合理、有效,規(guī)范和實用的圖書管理系統(tǒng),對圖書資料進行集中統(tǒng)一的管理。
另一方面,IT產(chǎn)業(yè)和Internet獲得了飛速發(fā)展,計算機應用已滲透到了各個領域,引起信息管理的革命,實現(xiàn)了信息的自動化處理,提高了處理的及時性和正確性。
提高圖書管理工作效率,作到信息的規(guī)范管理,科學統(tǒng)計和快速查詢,讓圖書館更好的為學校,社會服務。
1.2數(shù)據(jù)需求
圖書館管理信息系統(tǒng)需要完成功能主要有:
1. 讀者基本信息的輸入,包括借書證編號、讀者姓名、讀者性別。
2.讀者基本信息的查詢、修改,包括讀者借書證編號、讀者姓名、讀者性別等。
3.書籍類別標準的制定、類別信息的輸入,包括類別編號、類別名稱。
4.書籍類別信息的查詢、修改,包括類別編號、類別名稱。
5.書籍庫存信息的輸入,包括書籍編號、書籍名稱、書籍類別、作者姓名、出版社名稱、出版日期、登記日期。
6.書籍庫存信息的查詢,修改,包括書籍編號、書籍名稱、書籍類別、作者姓名、出版社名稱、出版日期登記日期等。
7.借書信息的輸入,包括讀者借書證編號、書籍編號、借書日期。
8.借書信息的查詢、修改,包括借書證編號、讀者編號、讀者姓名、書籍編號、書籍名稱、借書日期等。
9.還書信息的輸入,包括借書證編號、書籍編號、還書日期。
10.還書信息的查詢和修改,包括還書讀者借書證編號、讀者姓名、書籍編號、書籍名稱、借書日期、還書日期等。
11.超期還書罰款輸入,還書超出期限包括超出期限還書的讀者借書證號,書籍編號,罰款金額。
12.超期還書罰款查詢,刪除,包括讀者借書證編號、讀者姓名、書籍編號、書籍名稱,罰款金額等
1.3事物需求
(1)在讀者信息管理部分,要求:
a.可以查詢讀者信息。
b.可以對讀者信息進行添加及刪除的操作。
(2 )在書籍信息管理部分,要求:
a.可以瀏覽書籍信息,要求:
b.可以對書籍信息進行維護,包括添加及刪除的操作。
(3)在借閱信息管理部分,要求:。
a.可以瀏覽借閱信息。
b.可以對借閱信息進行維護操作。
(4)在歸還信息管理部分,要求:
a.可以瀏覽歸還信息
b.對歸還信息可修改維護操作
(5)在管理者信息管理部分,要求:
a.顯示當前數(shù)據(jù)庫中管理者情況。
b.對管理者信息維護操作。
(6)在罰款信息管理部分,要求:
a.可以瀏覽罰款信息
b.對罰款信息可以更新
1.4關系模式
(一) 書籍類別(種類編號,種類名稱)
(二) 讀者(借書證編號,讀者姓名,讀者性別,讀者種類,登記時期)
(三) 書籍(書籍編號,書籍名稱,書籍類別,書記作者,出版社名稱,出版日期,登記日期)
(四) 借閱(借書證編號,書籍編號,讀者借書時間)
(五) 還書(借書證編號,書籍編號,讀者還書時間)
(六) 罰款(借書證編號,讀者姓名,借書證編號,書籍編號,讀者借書時間)
以上通過關系代數(shù)方法的進行運算得到所需要的結果,在實驗結果中可以看到。
2.方案圖表設計
2.1 E-R圖
根據(jù)1)所要實現(xiàn)的功能設計,可能建立它們之間的關系,進而實現(xiàn)邏輯結構功能。
圖書管理信息系統(tǒng)可以劃分的實體有:書籍類別信息實體、讀者信息實體、書籍信息實體、借閱記錄信息實體,歸還記錄信息實體。用E-R圖一一描述這些實體。
2.1.1類別實體E-R圖:
圖2-1類別實體E-R圖
2.1.2讀者信息實體E-R圖:
圖2-2 讀者信息實體E-R圖
2.1.3信息實體E-R圖:
圖2-3信息實體E-R圖
2.1.4.記錄信息實體E-R圖:
圖2-4 記錄信息實體E-R圖
2.1.5記錄信息實體E-R圖:
圖2-5記錄信息實體E-R圖
2.1.6罰款信息實體E-R圖:
圖2-6罰款信息實體E-R圖
2.1.6總的信息實體E-R圖:
圖2-7總的信息實體E-R圖
2.2數(shù)據(jù)流程圖
D5
歸還信息錄入 基本信息錄入
D2
D1
基本信息錄入 基本信息錄入
D3
D4
借閱信息錄入
讀者信息返回 書籍信息返回
圖2-7系統(tǒng)的數(shù)據(jù)流程圖
2.3數(shù)據(jù)字典
表2-1 book_sytle 書籍類別信息表
表中列名 數(shù)據(jù)類型 可否為空 說明
bookstyleno varchar not null(主鍵) 種類編號
bookstyle Varchar not null 種類名稱
表2-2 system_readers讀者信息表格
表中列名 數(shù)據(jù)類型 可否為空 說明
readerid varchar not null(主鍵) 讀者借書證號
readername varchar not null 讀者姓名
readersex varchar not null 讀者性別
readertype varchar null 讀者種類
regdate datetime null 登記日期
表2-3 system_book書籍信息表
表中列名 數(shù)據(jù)類型 可否為空 說明
bookid Varchar Not null(主鍵) 書籍編號
bookname Varchar Not null 書籍名稱
bookstyle Varchar Not null 書籍類別
bookauthor Varchar Not null 書籍作者
bookpub Varchar Null 出版社名稱
bookpubdate Datetime Null 出版日期
bookindate Datetime Null 登記日期
isborrowed Varchar Not Null 是否被借出
表2-4 borrow_record 借閱記錄信息表
表中列名 數(shù)據(jù)類型 可否為空 說明
readerid Varchar Not null(外主鍵) 讀者借閱證編號
bookid Varchar Not null(外主鍵) 書籍編號
borrowdate Varchar Not null 讀者借書時間
表2-5 return_record 借閱記錄信息表
表中列名 數(shù)據(jù)類型 可否為空 說明
readername Varchar Not null(外主鍵) 讀者借閱證編號
readerid Varchar Not null(外主鍵) 書籍編號
returndate datetime Not null 讀者還書時間
表2-6 reader_fee 罰款記錄信息表
readerid varchar Not null 讀者借書證編號
readername varchar Not null 讀者姓名
bookid varchar Not null(外主鍵) 書籍編號
bookname varchar Not null 書籍名稱
bookfee varchar Not Null 罰款金額
borrowdate datetime Not Null 借閱時間
2.4關系圖:
圖2-8數(shù)據(jù)庫存表關系圖
3.數(shù)據(jù)庫源代碼
3.1數(shù)據(jù)庫建立
3.1.1創(chuàng)建數(shù)據(jù)庫
USE master
GO
CREATE DATABASE librarysystem
ON
( NAME = librarysystem,
FILENAME = 'd:\librarysystem.mdf',
SIZE = 10,
MAXSIZE = 50,
FILEGROWTH = 5 )
LOG ON
( NAME = 'library',
FILENAME = 'd:\librarysystem.ldf',
SIZE = 5MB,
MAXSIZE = 25MB,
FILEGROWTH = 5MB )
GO
3.1.2書本類別表建立
create table book_style
(
bookstyleno varchar(30) primary key,
bookstyle varchar(30)
)
3.1.3創(chuàng)建書庫表
create table system_books
(
bookid varchar(20) primary key,
bookname varchar(30) Not null,
bookstyleno varchar(30) Not null,
bookauthor varchar(30),
bookpub varchar(30) ,
bookpubdate datetime,
bookindate datetime ,
isborrowed varchar (2) ,
foreign key (bookstyleno) references book_style (bookstyleno),
)
3.1.4借書證表建立
create table system_readers
( readerid varchar(9)primary key,
readername varchar(9)not null ,
readersex varchar(2) not null,
readertype varchar(10),
regdate datetime
)
3.1.5借書記錄表建立
create table borrow_record
( bookid varchar(20) primary key,
readerid varchar(9),
borrowdate datetime,
foreign key (bookid) references system_books(bookid),
foreign key (readerid) references system_readers(readerid),
)
3.1.6還書記錄表建立
create table return_record
( bookid varchar(20) primary key,
readerid varchar(9),
returndate datetime,
foreign key (bookid) references system_books(bookid),
foreign key (readerid) references system_readers(readerid)
)
3.1.7罰款單表建立*/
create table reader_fee
( readerid varchar(9)not null,
readername varchar(9)not null ,
bookid varchar(20) primary key,
bookname varchar(30) Not null,
bookfee varchar(30) ,
borrowdate datetime,
foreign key (bookid) references system_books(bookid),
foreign key (readerid) references system_readers(readerid)
)
3.2數(shù)據(jù)初始化
3.2.1將書籍類別加入表book_style中
insert into book_style(bookstyleno,bookstyle)values('1','人文藝術類')
insert into book_style(bookstyleno,bookstyle)values('2','自然科學類')
insert into book_style(bookstyleno,bookstyle)values('3','社會科學類')
insert into book_style(bookstyleno,bookstyle)values('4','圖片藝術類')
insert into book_style(bookstyleno,bookstyle)values('5','政治經(jīng)濟類')
insert into book_style(bookstyleno,bookstyle)values('6','工程技術類')
insert into book_style(bookstyleno,bookstyle)values('7','語言技能類')
3.2.2將已有的圖書加入system_books表中(定義相同的作者出版社的書本編號不一樣)
insert
into system_books(bookid ,bookname, bookstyleno,bookauthor,bookpub,bookpubdate, bookindate, isborrowed )
values('00125415152','計算機組成原理','6','王愛英','清華大學出版社','2001-01-03','2003-11-15','1');
insert
into system_books(bookid ,bookname, bookstyleno,bookauthor,bookpub,bookpubdate, bookindate, isborrowed )
values('00125415153','計算機組成原理','6','王愛英','清華大學出版社','2001-01-03','2003-11-15','1');
insert
into system_books(bookid ,bookname, bookstyleno,bookauthor,bookpub, bookpubdate,bookindate, isborrowed )
values('00456456','數(shù)據(jù)庫原理','6','薩師煊','高等教育出版社','2007-07-02','2007-09-15','1');
insert
into system_books(bookid ,bookname, bookstyleno,bookauthor,bookpub,bookpubdate, bookindate, isborrowed )
values('12215121','C程序設計','6','譚浩強','清華大學出版社','2002-04-02','2004-03-14','1');
insert
into system_books(bookid ,bookname, bookstyleno,bookauthor,bookpub, bookpubdate,bookindate, isborrowed )
values('9787308020558','計算機體系結構','6','石教英','浙江大學出版社','2004-10-03','2006-11-15','1');
insert
into system_books(bookid ,bookname, bookstyleno,bookauthor,bookpub, bookpubdate,bookindate, isborrowed )
values('45456141414','數(shù)據(jù)結構(C語言版)','6','吳偉民,嚴蔚敏','清華大學出版社','2002-06-28','2004-01-21','1');
insert
into system_books(bookid ,bookname, bookstyleno,bookauthor,bookpub, bookpubdate,bookindate, isborrowed )
values('5455515','中華歷史5000年','1','吳強','北京大學出版社','2005-04-03','2006-05-15','1');
insert
into system_books(bookid ,bookname, bookstyleno,bookauthor,bookpub, bookpubdate,bookindate, isborrowed )
values('015115','古代埃及','3','趙文華','北京大學出版社','2001-02-02','2002-09-15','1');
insert
into system_books(bookid ,bookname, bookstyleno,bookauthor,bookpub, bookpubdate,bookindate, isborrowed )
values('1514514','日本文化','1','吳小鵬','北京大學出版社','2002-04-02','2004-03-14','1');
insert
into system_books(bookid ,bookname, bookstyleno,bookauthor,bookpub, bookpubdate,bookindate, isborrowed )
values('15154656','微觀經(jīng)濟學','5','李小剛','北京大學出版社','2000-10-03','2001-11-15','1');
insert
into system_books(bookid ,bookname, bookstyleno,bookauthor,bookpub, bookpubdate,bookindate, isborrowed )
values('5658','影視文學','4','蘇慶東','北京大學出版社','1999-02-28','2000-01-21','1');
insert into
system_books(bookid ,bookname, bookstyleno,bookauthor,bookpub, bookpubdate,bookindate, isborrowed )
values('565800020','探索宇宙奧秘','2','蘇慶東','北京大學出版社','1999-02-28','2000-01-21','1');
3.2.3將已有圖書證的讀者加入system_readers表中*/
insert into system_readers(readerid,readername,readersex,readertype,regdate)
values('X05620207','陳遠鵬','男','學生','2005-9-23 14:23:56')
insert into system_readers(readerid,readername,readersex,readertype,regdate)
values('X05620206','陳特','男','學生','2005-09-30 13:24:54.623')
insert into system_readers(readerid,readername,readersex,readertype,regdate)
values('X05620204','趙銘靜','女','學生','2005-09-27 11:24:54.123')
insert into system_readers(readerid,readername,readersex,readertype,regdate)
values('X05620202','潘虹','女','學生','2005-09-30 13:24:54.473')
insert into system_readers(readerid,readername,readersex,readertype,regdate)
values('008415','蔣偉','男','教師','2004-04-30 09:24:54.478')
insert into system_readers(readerid,readername,readersex,readertype,regdate)
values('001456','李葉風','女','教師','2004-04-30 09:24:54.478')
3.2.4添加已借書讀者的記錄,同時將在已借出的借閱標記置0*/
insert into borrow_record(bookid,readerid,borrowdate)
values('00125415152','X05620202','2007-09-27 11:24:54.123')
update system_books
set isborrowed=0
where bookid='00125415152'
insert into borrow_record(bookid,readerid,borrowdate)
values('00125415153','X05620206','2007-12-27 08:26:51.452')
update system_books
set isborrowed=0
where bookid='00125415153' and isborrowed='1'
insert into borrow_record(bookid,readerid,borrowdate)
values('5455515','X05620207','2007-12-27 08:26:51.452')
update system_books
set isborrowed=0
where bookid='5455515' and isborrowed='1'
insert into borrow_record(bookid,readerid,borrowdate)
values('015115','X05620204','2007-10-21 12:11:51.452')
update system_books
set isborrowed=0
where bookid='015115' and isborrowed='1'
insert into borrow_record(bookid,readerid,borrowdate)
values('15154656','001456','2007-12-28 14:11:51.312')
update system_books
set isborrowed=0
where bookid='15154656' and isborrowed='1'
insert into borrow_record(bookid,readerid,borrowdate)
values('565800020','008415','2007-08-28 15:11:31.512')
update system_books
set isborrowed=0
where bookid='565800020' and isborrowed='1'
4.結果數(shù)據(jù)處理
4.1單表查詢
4.1.1表book_style中查詢演示:
圖4-1 表book_style中內(nèi)容
4.1.2表system_books中查詢演示:
圖4-2 表system_books中內(nèi)容
4.1.3將已有圖書證的讀者加入system_readers表中結果查詢:
圖4-3 表system_readers中內(nèi)容
4.1.4借書紀錄表borrow_record結果查詢:
圖4-4 表borrow_record中內(nèi)容
4.2超期處理
4.2.1現(xiàn)在對已有借書證的讀者進行查詢借書是否超期(這里歸定30天):
說明:當前的getdate()以日期為2008年1月6日計算
圖4-4 選出借出超過30天的讀者
4.2.2同時也可以用語句超過天數(shù)的讀者進行罰款,加入到罰款單里面,一天以0.3元扣除計算:
SQL語言:
insert into reader_fee(readerid,readername,bookid,bookname,bookfee,borrowdate)
select system_readers.readerid 讀者借書證編號 ,readername 讀者姓名,
system_books.bookid 書籍編號,bookname 書名,
0.3*(Datediff(day,convert(smalldatetime,borrowdate),getdate())-30) 超過時間天數(shù),
borrowdate 借書時間
from borrow_record ,system_readers ,system_books
where system_readers.readerid=borrow_record.readerid
and system_books.bookid=borrow_record.bookid
and Datediff(day,convert(smalldatetime,borrowdate),getdate())=30
(所影響的行數(shù)為 3 行)
select readerid 書讀者借書證編號,readername 讀者姓名,
bookid 書籍編號,bookfee 超期罰款
from reader_fee
形成各本書對應的罰款金額,按0.3元每天算
圖4-5查看罰款單
4.3還書操作
4.3.1現(xiàn)在對某一讀者進行還書操作:
1.首先還書要在還書紀錄中添加一條還書紀錄
2.其次刪除相應書本的借閱紀錄
3.最后在書庫中標記該本書為1,表示歸還了未借,可供其他讀者借閱
說明:學號為X05620207 姓名為陳遠鵬 借閱的565800020書籍編號進行歸還。
SQL語言:
insert into return_record(bookid,readerid,returndate)
select bookid,readerid,getdate()
from borrow_record
where bookid='565800020'
(所影響的行數(shù)為 1 行)
delete
from borrow_record
where bookid='565800020'
(所影響的行數(shù)為 1 行)
update system_books
set isborrowed=1
where bookid='565800020'
(所影響的行數(shù)為 1 行)
三個表的結果如圖:
圖4-6 增加了565800020紀錄
圖4-7 565800020這本書在借書紀錄里沒有了
圖4-8 標記設為了‘1’
說明:這本書重新回到未被借出標記為1(注,相同的書其編號是不同的)
其結果為還書成功,相應的各表都有變化,對于罰款單通過借閱記錄表borrow_record中更新。
4.4借書操作
4.4.1查詢未被借出的書本:
圖4-9
4.4.2查詢已被借出的書本:
圖4-10
4.4.3申請借書證:
SQL語言:
Insert into system_readers(readerid,readername,readersex,readertype,regdate)
values('X05620211','小華','男','學生',getdate())
圖4-11
說明:查詢相應的紀錄增加了小華這樣一個讀者的借書證紀錄:
4.4.4注銷借書證:
說明:
1.在注銷之前執(zhí)行所有的還書過程,就是上面寫到的所述SQL語句,然后執(zhí)行
delete from system_readers where readerid=' X05620211',
2.小華借書證紀錄就被刪除了,同時要刪除和小華歸還紀錄的內(nèi)容
delete from return_record where readerid=' X05620211',
4.4.5查詢所有書所對應的類別:
圖4-12
4.5書籍狀態(tài)
4.5.1查詢所有工技術類的書:
圖4-13
4.5.2查詢清華大學出版社出版的書:
圖4-14
4.6讀者狀態(tài)
4.6.1查詢什么人借了什么書:
SQL語言:
select readername 讀者姓名,bookname 書籍名稱
from borrow_record,system_books,system_readers
where system_readers.readerid=borrow_record.readerid
and system_books.bookid=borrow_record.bookid
圖4-15
4.6.2指定潘虹借了什么書:
SQL語言:
select readername 讀者姓名,bookname 書籍名稱
from borrow_record,system_books,system_readers
where system_readers.readerid=borrow_record.readerid
and system_books.bookid=borrow_record.bookid
and readername='潘虹'
圖4-16
5.結束語
5.1課程設計心得
通過此次數(shù)據(jù)庫的課程設計,真正達到了學與用的結合,增強了對數(shù)據(jù)庫方面應用的理解,對自己今后參與開發(fā)數(shù)據(jù)庫系統(tǒng)積累了不少經(jīng)驗,在實驗過程中,從建立數(shù)據(jù)開始,對靈據(jù)庫設計理念及思想上有更高的認識,從需求分析,到概念設計和邏輯設計,E-R圖的表示,數(shù)據(jù)字典的創(chuàng)建,懂得了不少有關數(shù)據(jù)庫開發(fā)過程中的知識,在實驗中建表,及其關系模式,關系代數(shù)的建立及理解,將SQL語的查詢語句用得淋漓盡致,增強了自己在數(shù)據(jù)庫中應用SQL語言的靈活性,其中包括,插入、刪除、修改、查詢,牽涉表和表之間的聯(lián)系,主建與外主鍵的定義,約束項的設置,使邏輯更嚴密,在學習過程中,我也能過上網(wǎng)查了不少資料,也看了一些別人設計的圖書館管理信息系統(tǒng)的設計報告,學以致用,自我創(chuàng)新,獨立完成了這份自己的報告,從中在學到用,從用又到學,不斷修改,系統(tǒng)更新。雖然不能達到完善系統(tǒng),但也做到了盡善盡美,加強理論學習對完善系統(tǒng)會有很多幫助,不管怎么說,對這次做的課程設計自己覺得還算滿意。
普通。就是學習數(shù)據(jù)庫的操作而已。讀取,編輯,刪除這三種操作邏輯。只要記憶力好,把那幾種命令語句背下來,基本的操作就沒問題。這對今后的其他課程尤其是編程是有幫助的,因為有些軟件會設計到數(shù)據(jù)庫的讀寫操作。尤其是一些網(wǎng)站,肯定會連接數(shù)據(jù)庫。不會數(shù)據(jù)庫操作,就沒辦法制作動態(tài)網(wǎng)站。
大數(shù)據(jù)管理專業(yè)學計算機科學原理,數(shù)據(jù)科學原理,數(shù)據(jù)結構原理,算法原理,程序設計原理,數(shù)據(jù)挖掘技術,數(shù)據(jù)分析方法,概率論和統(tǒng)計等。
一、大數(shù)據(jù)管理與應用學科基礎課程:
大數(shù)據(jù)管理與應用導論、管理學、會計學、經(jīng)濟學、運籌學、概率論與數(shù)理統(tǒng)計等。另外安排有計算機基本技能訓練、程序設計基礎課程設計等實踐課。
二、大數(shù)據(jù)管理與應用專業(yè)基礎課程:
數(shù)據(jù)結構、大數(shù)據(jù)技術原理、數(shù)據(jù)庫原理與應用、管理統(tǒng)計學數(shù)據(jù)挖掘技術、LINUX基礎與應用等。
三、大數(shù)據(jù)管理與應用專業(yè)核心課程:
數(shù)據(jù)采集與管理、商業(yè)數(shù)據(jù)分析、數(shù)據(jù)可視化技術、數(shù)據(jù)安全與治理、商務智能及應用、大數(shù)據(jù)應用系統(tǒng)設計。
四、大數(shù)據(jù)管理與應用專業(yè)方向課程:這部分屬于選修課程,并不全部學習。
有人工智能導論、信息管理與系統(tǒng)建模、電子商務、企業(yè)大數(shù)據(jù)管理、推薦系統(tǒng)導論、大數(shù)據(jù)營銷與管理、網(wǎng)絡前沿安全技術、深度學習導論、區(qū)塊鏈技術、智能交互技術、云計算基礎、多元系統(tǒng)分析及R語言建模、WEB前端設計、NOSQL數(shù)據(jù)庫、IT項目管理等等。
五、專業(yè)實踐課程:大數(shù)據(jù)技術原理與應用課程設計、數(shù)據(jù)庫原理及應用課程設計、商業(yè)數(shù)據(jù)分析課程設計、數(shù)據(jù)可視化綜合實踐、大數(shù)據(jù)管理畢業(yè)實習及畢業(yè)設計等。
1
select
*
from
教師表
where
系別
='cs';
2
select
姓名,2011-年齡
as
出生日期
from
學生表
3
select
*
from
學生表
where
年齡=20
and
系別='cs';
4
select
*
from
學生表
where
年齡
not
between
18
and
20;
5
select
姓名,年齡
from
教師表
where
系別
in('cs','is');
6
select
*
from
教師表
where
姓名
like
'%敏';
7
select
*
from
選課表
where
先修課
is
null;
8
select
count(*)
from
教師表
9
select
avg(成績),max(成績),min(成績)
from
選課表
where
課程號=5;
10
select
count(*)
from
選課表
group
by
課程號
首先我們要了解Java語言和Linux操作系統(tǒng),這兩個是學習大數(shù)據(jù)的基礎,學習的順序不分前后。
大數(shù)據(jù)
大數(shù)據(jù)
Java :只要了解一些基礎即可,做大數(shù)據(jù)不需要很深的Java 技術,學java SE 就相當于有學習大數(shù)據(jù)基礎。
Linux:因為大數(shù)據(jù)相關軟件都是在Linux上運行的,所以Linux要學習的扎實一些,學好Linux對你快速掌握大數(shù)據(jù)相關技術會有很大的幫助,能讓你更好的理解hadoop、hive、hbase、spark等大數(shù)據(jù)軟件的運行環(huán)境和網(wǎng)絡環(huán)境配置,能少踩很多坑,學會shell就能看懂腳本這樣能更容易理解和配置大數(shù)據(jù)集群。還能讓你對以后新出的大數(shù)據(jù)技術學習起來更快。
Hadoop:這是現(xiàn)在流行的大數(shù)據(jù)處理平臺幾乎已經(jīng)成為大數(shù)據(jù)的代名詞,所以這個是必學的。Hadoop里面包括幾個組件HDFS、MapReduce和YARN,HDFS是存儲數(shù)據(jù)的地方就像我們電腦的硬盤一樣文件都存儲在這個上面,MapReduce是對數(shù)據(jù)進行處理計算的,它有個特點就是不管多大的數(shù)據(jù)只要給它時間它就能把數(shù)據(jù)跑完,但是時間可能不是很快所以它叫數(shù)據(jù)的批處理。
Zookeeper:這是個萬金油,安裝Hadoop的HA的時候就會用到它,以后的Hbase也會用到它。它一般用來存放一些相互協(xié)作的信息,這些信息比較小一般不會超過1M,都是使用它的軟件對它有依賴,對于我們個人來講只需要把它安裝正確,讓它正常的run起來就可以了。
Mysql:我們學習完大數(shù)據(jù)的處理了,接下來學習學習小數(shù)據(jù)的處理工具mysql數(shù)據(jù)庫,因為一會裝hive的時候要用到,mysql需要掌握到什么層度那?你能在Linux上把它安裝好,運行起來,會配置簡單的權限,修改root的密碼,創(chuàng)建數(shù)據(jù)庫。這里主要的是學習SQL的語法,因為hive的語法和這個非常相似。
Sqoop:這個是用于把Mysql里的數(shù)據(jù)導入到Hadoop里的。當然你也可以不用這個,直接把Mysql數(shù)據(jù)表導出成文件再放到HDFS上也是一樣的,當然生產(chǎn)環(huán)境中使用要注意Mysql的壓力。
Hive:這個東西對于會SQL語法的來說就是神器,它能讓你處理大數(shù)據(jù)變的很簡單,不會再費勁的編寫MapReduce程序。有的人說Pig那?它和Pig差不多掌握一個就可以了。
Oozie:既然學會Hive了,我相信你一定需要這個東西,它可以幫你管理你的Hive或者MapReduce、Spark腳本,還能檢查你的程序是否執(zhí)行正確,出錯了給你發(fā)報警并能幫你重試程序,最重要的是還能幫你配置任務的依賴關系。我相信你一定會喜歡上它的,不然你看著那一大堆腳本,和密密麻麻的crond是不是有種想屎的感覺。
Hbase:這是Hadoop生態(tài)體系中的NOSQL數(shù)據(jù)庫,他的數(shù)據(jù)是按照key和value的形式存儲的并且key是唯一的,所以它能用來做數(shù)據(jù)的排重,它與MYSQL相比能存儲的數(shù)據(jù)量大很多。所以他常被用于大數(shù)據(jù)處理完成之后的存儲目的地。
Kafka:這是個比較好用的隊列工具,隊列是干嗎的?排隊買票你知道不?數(shù)據(jù)多了同樣也需要排隊處理,這樣與你協(xié)作的其它同學不會叫起來,你干嗎給我這么多的數(shù)據(jù)(比如好幾百G的文件)我怎么處理得過來,你別怪他因為他不是搞大數(shù)據(jù)的,你可以跟他講我把數(shù)據(jù)放在隊列里你使用的時候一個個拿,這樣他就不在抱怨了馬上灰流流的去優(yōu)化他的程序去了,因為處理不過來就是他的事情。而不是你給的問題。當然我們也可以利用這個工具來做線上實時數(shù)據(jù)的入庫或入HDFS,這時你可以與一個叫Flume的工具配合使用,它是專門用來提供對數(shù)據(jù)進行簡單處理,并寫到各種數(shù)據(jù)接受方(比如Kafka)的。
Spark:它是用來彌補基于MapReduce處理數(shù)據(jù)速度上的缺點,它的特點是把數(shù)據(jù)裝載到內(nèi)存中計算而不是去讀慢的要死進化還特別慢的硬盤。特別適合做迭代運算,所以算法流們特別稀飯它。它是用scala編寫的。Java語言或者Scala都可以操作它,因為它們都是用JVM的。
很多新手在學習java的時候都比較迷茫,不知道從哪里開始學起,這里就給大家整理了一份java開發(fā)學習路線,比較系統(tǒng)全面,可參考這份大綱來安排學習計劃,希望可以幫到你~
2020最新java學習路線圖:
學習內(nèi)容:
第一階段:java專業(yè)基礎課程
階段目標:
1、熟練掌握java的開發(fā)環(huán)境與編程核心知識;
2、熟練運用java面向?qū)ο笾R進行程序開發(fā);
3、對java的核心對象和組件有深入理解;
4、熟練運用javaAPI相關知識;
5、熟練應用java多線程技術;
6、能綜合運用所學知識完成一個項目。
知識點:
1、基本數(shù)據(jù)類型,運算符,數(shù)組,掌握基本數(shù)據(jù)類型轉換,運算符,流程控制;
2、數(shù)組,排序算法,java常用API,類和對象,了解類與對象,熟悉常用API;
3、面向?qū)ο筇卣鳎峡蚣埽煜っ嫦驅(qū)ο笕筇卣鳎炀毷褂眉峡蚣埽?/p>
4、IO流,多線程;
5、網(wǎng)絡協(xié)議,線程運用。
第二階段:javaWEB核心課程
階段目標:
1、熟練掌握數(shù)據(jù)庫和MySQL核心技術;
2、深入理解JDBC與DAO數(shù)據(jù)庫操作;
3、熟練運用JSP及Servlet技術完成網(wǎng)站后臺開發(fā);
4、深入理解緩存、連繼池、注解、反射、泛型等知識;
5、能夠運用所學知識完成自定義框架。
知識點:
1、數(shù)據(jù)庫知識,范式,MySQL配置,命令,建庫建表,數(shù)據(jù)的增刪改查,約束,視圖,存儲過程,函數(shù),觸發(fā)器,事務,游標,建模工具。
2、深入理解數(shù)據(jù)庫管理系統(tǒng)通用知識及MySQL數(shù)據(jù)庫的使用與管理。為Java后臺開發(fā)打下堅實基礎。Web頁面元素,布局,CSS樣式,盒模型,JavaScript,jQuery。
3、掌握前端開發(fā)技術,掌握jQuery。
4、Servlet,EL表達式,會話跟蹤技術,過濾器,F(xiàn)reeMarker。
5、掌握Servlet相關技術,利用Servlet,JSP相關應用技術和DAO完成B/S架構下的應用開發(fā)。
6、泛型,反射,注解。
7、掌握JAVA高級應用,利用泛型,注解,枚舉完成自己的CRUD框架開發(fā)為后續(xù)框架學習做鋪墊。
8、單點登錄,支付功能,項目整合,分頁封裝熟練運用JSP及Servlet核心知識完成項目實戰(zhàn)。
第三階段:JavaEE框架課程
階段目標:
1. 熟練運用Linux操作系統(tǒng)常見命令及完成環(huán)境部署和Nginx服務器的配置
2. 熟練運用JavaEE三大核心框架:Spring,SpringMVC,MyBatis
3. 熟練運用Maven,并使用SpringBoot進行快速框架搭建
4. 深入理解框架的實現(xiàn)原理,Java底層技術,企業(yè)級應用等
5. 使用Shiro,Ztree和Spring,SpringMVC,Mybaits完成企業(yè)項目
知識點:
1、Linux安裝配置,文件目錄操作,VI命令,管理,用戶與權限,環(huán)境部署,Struts2概述,hiberante概述。
2、Linux作為一個主流的服務器操作系統(tǒng),是每一個開發(fā)工程師必須掌握的重點技術,并且能夠熟練運用。
3、SSH的整合,MyBatis,SpringMVC,Maven的使用。
4、了解AOP原理,了解中央控制器原理,掌握MyBatis框架,掌握SSM框架的整合。
5、Shiro,Ztree,項目文檔,項目規(guī)范,需求分析,原型圖設計,數(shù)據(jù)庫設計,工程構建,需求評審,配置管理,BUG修復,項目管理等。
6、獨立自主完成一個中小型的企業(yè)級綜合項目的設計和整體架構的原型和建模。獨立自主完成一個大型的企業(yè)級綜合項目,并具備商業(yè)價值。
第四階段:分布式與微服務課程
階段目標:
1.掌握前端框架VUE及Bootstrap的應用開發(fā)
2.基于SpringCloud完成微服務架構項目的開發(fā)
3.掌握NoSQL數(shù)據(jù)庫Redis的使用
4.掌握消息隊列RabbitMQ的使用
5.掌握Mycat數(shù)據(jù)庫中間件的使用
知識點:
1、Bootstrap前端框架、VUE前端框架、RabbitMQ消息隊列。
2、掌握Bootstrap前端框架開發(fā)、掌握VUE前端框架開發(fā)、掌握RabbitMQ消息隊列的應用、掌握SpringBoot集成RabbitMQ。
3、Redis緩存數(shù)據(jù)庫的應用、Java基于Redis的應用開發(fā)、基于SpringCloud微服務架構開發(fā)實戰(zhàn)。
4、掌握NOSQL數(shù)據(jù)庫Redis的安裝、使用,Redis客戶端的安裝使用,Java訪問操作Redis數(shù)據(jù)庫,Redis的持久化方案、主從復制、高可用。
5、掌握SpringCloud微服務架構的開發(fā),注冊中心,網(wǎng)關配置,配置中心,微服務間通信及容器化部署。
6、項目文檔,項目規(guī)范,需求分析,數(shù)據(jù)庫設計,工程構建,需求評審,配置管理,BUG修復,項目管理等。
7、掌握數(shù)據(jù)庫中間件Mycat的應用,基于Mycat實現(xiàn)數(shù)據(jù)讀寫分離,高可用集群。
8、掌握項目開發(fā)的流程,按照項目開發(fā)流程完成基于微服務架構項目的需求分析,編碼開發(fā)。
網(wǎng)站欄目:nosql課程設計,nosql課程設計期末大作業(yè)
瀏覽地址:http://chinadenli.net/article38/dsidipp.html
成都網(wǎng)站建設公司_創(chuàng)新互聯(lián),為您提供自適應網(wǎng)站、標簽優(yōu)化、關鍵詞優(yōu)化、建站公司、虛擬主機、響應式網(wǎng)站
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉載內(nèi)容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉載,或轉載時需注明來源: 創(chuàng)新互聯(lián)