㈠ 資料庫系統原理課程設計 -----圖書借閱管理系統
#include <string.h>
#include <iostream.h>
class Book{ // 書籍基類
protected:
char Title[40]; // 書名
long Code; // 條碼
int Type; // 0表示書,1表示雜志
public:
Book();
Book(char *title,long code);
void SetCode(long code){ Code = code; }
void SetTitle(char* tl){ strcpy(Title,tl); }
void SetType(bool type){Type = type; }
int GetType(){ return Type; }
long GetCode(){ return Code;}
virtual void Show(); // 顯示書的信息
friend ostream& operator<<(ostream& , Book&); // 重載插入運算符
friend istream& operator>>(istream& is, Book&); // 重載提取運算符
Book *Next; // 為創建每個讀者所借書鏈表而定義指針
};
class Item :public Book{ //書的款目
// char Title[40]; // 書名
char Author[20]; // 著者名
char IndexCode[10]; // 分類號
// long Code; // 條碼
public:
Item();
Item(char *author,char *title,char *index,int code);
Item(Item &);
void SetAuthor(char*);
void SetIndexCode(char*);
virtual void Show(); // 顯示書的信息
friend ostream& operator<<(ostream& os, Item&); // 重載插入運算符
friend istream& operator>>(istream& is, Item&); // 重載提取運算符
public:
};
class Magazine:public Book { //雜志類
int Volume;
enum LANG {CHINESE=1,ENGLISH} Lang; // 枚舉變數,確定語言類別
public:
Magazine():Book(){Volume = 0; Lang = CHINESE; Type = 1; }
Magazine(char *title,int vol,LANG lang,int code);
Magazine(Magazine&);
void SetVolume(int vol){Volume = vol;}
void SetLang(int lang){Lang = (LANG)lang;}
virtual void Show(); // 顯示雜志的信息
friend ostream& operator<<(ostream& os, Magazine&); // 重載插入運算符
friend istream& operator>>(istream& is, Magazine&); // 重載提取運算符
};
class Reader{ // 讀者信息類
char Name[20]; // 姓名
char Position[20]; // 職務
int Age; // 年齡
long Code; // 借書證號
Book* items; // 所借書鏈表
public:
Reader();
Reader(char *name,char *posi,int age,int code);
// Reader(Reader&);
~Reader();
long GetCode(){return Code;}
void SetName(char*);
void SetPosition(char*);
void SetAge(int);
void SetCode(long);
void AddBook(Item); // 添加所借書
void AddBook(Magazine); // 添加所借雜志
void DelBook(Book it); // 還書後減少所借書
void ShowBooks(); // 顯示所借書
void Show(); // 顯示讀者信息
friend ostream& operator<<(ostream& os, Reader&); // 重載插入運算符
friend istream& operator>>(istream& is, Reader&); // 重載提取運算符
public:
int Counter; //計數器,統計所借書數目
};
class Manager{ // 管理員類
char Name[20]; // 姓名
int Age; // 年齡
int Code; // 工號
friend class Library; // 將圖書館類聲明為友元
public:
Manager(){}
Manager(char*,int,int);
long GetCode(){ return Code;}
void Show();
friend ostream& operator<<(ostream& os, Manager&); // 重載插入運算符
friend istream& operator>>(istream& is, Manager&); // 重載提取運算符
};
class Loan { // 借閱信息類
int Type; // 0表示書,1表示雜志
Item item; // 借閱書
Magazine mag; // 借閱雜志
Reader reader; // 借閱者
Manager manager; // 借書操作員
int Code;
friend class Library; // 將圖書館類聲明為友元
public:
Loan(){ }
Loan(Loan & l);
int GetCode(){ return Code;}
void Show();
friend ostream& operator<<(ostream& os, Loan&); // 重載插入運算符
friend istream& operator>>(istream& is, Loan&); // 重載提取運算符
};
、、、、、、、、、、、、、、、、、、、、、、、
#include<iostream.h>
#include<string.h>
class Reader;
template<typename T> class DblList;
template<typename T> class DblNode{
public:
T Info;//數據域
DblNode<T> *llink,*rlink; //前驅(左鏈)、後繼(右鏈)指針
public:
DblNode(T data);//一般結點
DblNode();//頭結點
T GetInfo(){return Info;};
friend class DblList<T>;
friend class Library;
};
template<typename T>class DblList{
DblNode<T> *head,*current;
public:
DblList();
~DblList();
void Insert(const T& data);
DblNode<T>* Remove(DblNode<T>* p);
void Print();
int Length();//計算鏈表長度
DblNode<T> *Find(T data);//搜索數據與定值相同的結點
DblNode<T>* Find(int data);//按某個關鍵字查找
void MakeEmpty(); //清空鏈表
void ShowList(); //顯示鏈表各結點
friend istream& operator>>(istream&, DblList<typename T>&); // 重載輸入流運算符
friend ostream& operator<<(ostream& os, DblList<typename T>& dlist); // 重載輸出流運算符
friend class Library;
//其它操作
};
template<typename T> DblNode<T>::DblNode(){
llink=rlink=NULL;
}
template<typename T> DblNode<T>::DblNode(T data){
info=data;
llink=NULL;
rlink=NULL;
}
template<typename T> DblList<T>::DblList(){//建立表頭結點
head=new DblNode<T>();
head->rlink=head->llink=head;
current=NULL;
}
template<typename T> DblList<T>::~DblList(){
MakeEmpty();//清空鏈表
delete head;
}
template<typename T> void DblList<T>::MakeEmpty(){
DblNode<T> *tempP;
while(head->rlink!=head){
tempP=head->rlink;
head->rlink=tempP->rlink;//把頭結點後的第一個節點從鏈中脫離
tempP->rlink->llink=head;//處理左指針
delete tempP; //刪除(釋放)脫離下來的結點
}
current=NULL; //current指針恢復
}
template<typename T> void DblList<T>::Insert(const T & data){//新節點在鏈尾
current=new DblNode<T>;
current->Info=data;
current->rlink=head;//注意次序
current->llink=head->llink;
head->llink->rlink=current;
head->llink=current;//最後做
}
template<typename T> DblNode<T>* DblList<T>::Remove(DblNode<T>* p){ // 刪除結點
current=head->rlink;
while(current!=head&¤t!=p) current=current->rlink;
if(current==head) current=NULL;
else{//結點摘下
p->llink->rlink=p->rlink;
p->rlink->llink=p->llink;
p->rlink=p->llink=NULL;
}
return current;
}
template<typename T> DblNode<T>* DblList<T>::Find(T data){ // 按結點查找
current=head->rlink;
while(current!=head&¤t->Info!=data) current=current->rlink;
if(current==head) current=NULL;
return current;
}
template<typename T> DblNode<T>* DblList<T>::Find(int data){ // 按數據值查找結點
current=head->rlink;
int temp =current->Info.GetCode();
while(current!=head&&temp!=data){
current=current->rlink;
temp = current->Info.GetCode();
}
if(current==head) current=NULL;
return current;
}
template<typename T> void DblList<T>::Print(){ // 輸出鏈表
current=head->rlink;
while(current!=head){
cout<<current->Info<<'\t';
current=current->rlink;
}
cout<<endl;
}
template<typename T> int DblList<T>::Length(){ // 取得鏈表長度
int count=0;
current=head->rlink;
while(current!=head){
count++;
current=current->rlink;
}
return count;
}
template<typename T> void DblList<T>::ShowList(){ // 輸出鏈表各結點
int count=0;
current=head->rlink;
while(current!=head){
current->GetInfo().Show();
current=current->rlink;
}
return ;
}
template<typename T>
istream& operator>>(istream& is, DblList<typename T> &dlist){
int len;
T tt; // 定義局部變數讀入一個結點
is>>len;
for(int i= 0 ;i<len; i++){ // 循環讀入鏈表各結點
is>>tt;
dlist.Insert(tt);
}
return is;
}
template<typename T>
ostream& operator<<(ostream& os, DblList<typename T> &dlist){
DblNode<T> *tempP;
int len = dlist.Length();
os<<len<<' ';
tempP=dlist.head->rlink;
while(tempP!=dlist.head){ // 循環輸出鏈表各結點
os<<tempP->Info;
tempP = tempP->rlink;
}
return os;
}
#include "class.h"
#include "dblist.h"
#include <fstream.h>
class Library{ // 封裝圖書館流通業務的類
DblList<Item> item; // 在館圖書鏈表
DblList<Magazine> mag; // 在館雜志鏈表
DblList<Reader> reader; // 讀者鏈表
DblList<Loan> loan; // 借閱信息鏈表
DblList<Manager> manager; // 管理員信息鏈表
int itemNum; // 記錄在館圖書數目
int magNum; // 記錄在館雜志數目
int readerNum; // 記錄讀者數目
int loanNum; // 記錄借閱信息數目
int managerNum; // 記錄管理員數目
ofstream itemFileOut; // 文件流對象,保存圖書館書籍數據
ifstream itemFileIn; // 文件流對象,讀入圖書館書籍數據
ofstream magFileOut; // 文件流對象,保存圖書館雜志數據
ifstream magFileIn; // 文件流對象,讀入圖書館雜志數據
ofstream readerFileOut; // 文件流對象,保存圖書館讀者數據
ifstream readerFileIn; // 文件流對象,讀入圖書館讀者數據
ofstream loanFileOut; // 文件流對象,保存圖書館借閱信息數據
ifstream loanFileIn; // 文件流對象,讀入圖書館借閱信息
ofstream managerFileOut; // 文件流對象,保存圖書館管理員數據
ifstream managerFileIn; // 文件流對象,讀入圖書館管理員數據
public:
Library(); // 構造函數
~Library(); //析構函數
void Run(); // 圖書館類的運行函數
void CreateBibliotheca(); // 創建書目
void CreateReader(); // 創建讀者庫
void CreateManager(); // 創建管理員信息
int ShowMainMenu(); // 顯示主菜單函數
void Borrow(); // 借書操作
void Return(); // 還書操作
void Require(); // 查詢操作
void SaveInfo(); // 保存圖書館信息
void OpenInfo(); // 讀入圖書館信息
};
㈡ sql資料庫課程設計
網路即時通信系統是為用戶開發研製的,用戶是系統的最終使用者和評價者,所以在網路通信系統的開發設計的過程中,我們樹立了從用戶的尋求出發,面向用戶,一切為了用戶的觀念,在分析與設計系統的前期,為了保證系統的功能的完善多次尋求周圍同學和老師的意見,了解他們的要求,依照功能完善,界面美觀,操作簡單的原則進行設計 。
嚴格按階段進行
系統的開發設計是一項較大的工程,所以應該將整個系統的開發設計過程劃分為若干階段,相應的階段又要分為若干個不同的步驟,每個階段和步驟都要有明確的工作任務和目標。這種有序的組織安排,條例清楚、層次分明,便於計劃的制定和控制,並且為後續工作的進行奠定了堅實的基礎,提高了工作效率和質量。
採用系統的觀點處理
在系統分析階段,在對原系統進行全面調查和分析的基礎上,構造系統的最佳邏輯模型,使用戶對將來完整系統的輪廓有個初步的了解和認識,以便及時和用戶進行交流和探討,不斷提高系統的完善性。在此基礎上進行系統的物理實現和設計,切實完成邏輯模型的具體功能。邏輯設計和物理實現二者是相輔相成、密不可分的,這樣使系統的設計更加穩妥合理。
整個系統的設計主要採用快速原形法
快速原形法是信息系統設計的一個重要方法。它是根據用戶提出的需求,由用戶和開發者共同確定系統的基本要求和主要功能,並在一個較短的時間內建立一個實驗性的、簡單的信息系統模型,通過用戶不斷提出的意見和建議,對模型進行不斷的修改和完善,直到用戶比較滿意為止,以便形成一個相對穩定、較為理想的管理信息系統。該方法的主要優點。
1.脈絡清楚,所有問題都圍繞一個模型展開,使彼此之間聯系緊密。
2.有助於發現用戶需求,通過對原形和用戶接觸,能夠啟發開發人員去挖掘問題,從而不斷的修正、完善,最終得到一個理想的系統。
3.系統開發效率高,此方法的開發周期短、使用靈活、容易修改,這對於管理體制不夠穩定的系統更加適合。
4.系統的可擴展性好,由於此方法是在原型應用中不斷發展完善和修改的,所以有較強的擴展性。
在進行代碼設計時,遵循了以下原則。
唯一性:在本系統中,每一個代碼都和系統中的每一個對象唯一確定。
標准性:主要體現在對程序文件名命名和對數據文件命名的標准化上,遵循簡單扼要,方便適用的原則。一目瞭然,無重復現象。為了系統維護人員便於進行系統維護,使用了統一的標准。
合理性:系統中代碼設計與編碼對象的分類相適應,以使代碼對編碼對象的分類據有標志作用。
簡單性:在設計過程中採用Code-Behind代碼分離,使資料庫操作代碼和前端調用代碼分離,頁面修改容易。
適應性:在代碼設計過程中,代碼反映了編碼對象的特點,便於識別和記憶,使系統維護人員容易了解和掌握,便於進行維護工作。
系統總體功能結構
網路通信系統包含以下主要功能。
用戶注冊;用戶登錄;
查找好友;查看好友資料;
添加好友;
刪除好友;
發送消息;
發送文件.
資料庫表主要用來存放用戶的注冊信息和用戶的好友資料,可利用兩張資料庫表來 存放用戶信息和用戶好友的資料。包括用戶的號碼,昵稱,密碼,在線與否,ip地址,資料,頭像號,性別,E-mail和籍貫等信息。其中,用戶昵稱和密碼是必需的欄位;在線與否是由系統自動設置的;其餘的信息是可選的欄位。
課題整體以JAVA為平台,採用Eclipse開發工具,並使用SQL Server 2000管理資料庫數據開發而成的基於Socket的集中式網路通信系統,系統採用客戶機/伺服器(C/S)的模式設計,是一個三層C/S結構,資料庫伺服器、應用程序伺服器端 、應用程序客戶端。系統採用C/S結構,可以將任務合理分配到客戶機端和伺服器端 ,從而降低了系統的通信開銷。
客戶層。
客戶層是應用程序的用戶介面部分,它擔負著用戶與應用間的對話功能,用於檢查用戶的輸入數據,顯示應用的輸出數據,為了直觀的進行操作,客戶層需要使用圖形用戶介面,若聊天用戶變更,系統只需改寫顯示控制和數據檢查程序即可,而不會影響其他兩層。
服務層。(功能層)
服務層相當於應用的本體,它是將具體的業務處理邏輯編入程序中。在應用設計中,必須避免在表示層和功能層之間進行多次的數據交換,這就需要盡可能進行一次性的業務處理達到優化整體設計的目的。
數據層
數據層是DBMS,本系統使用了Microsoft 公司的SQL Ssever2000資料庫伺服器來管理數據。SQL Ssever2000能迅速的執行大量數據的更新和檢索,因此,從功能層傳送到數
據層的要求一般都使用SQL語言。
這是我畢業論文一部分 做的是聊天系統 給你參考 無所謂給不給分~! 也不可能全給你 帶代碼有20兆
㈢ 學生公寓管理系統源代碼 是JAVA與SQL寫的.做課程設計
這可是一個系統呀,認真做,還真的要好些天呀,雖然不是很難,自己做吧,可以學到很多的,不要偷懶的,是學生吧,我也是,其實最主要就是一個資料庫的操作問題,以及在界面上的數據顯示,swing與jdbc兩個重點
㈣ 數據課程設計心得體會
課程設計既可以指為掌握某一課程內容所進行的設計,也要指對某一門課程教學策劃的研究活動,下面是為大家搜集整理的數據課程設計心得體會,歡迎閱讀。
數據課程設計心得體會(一)
在我看來,資料庫課程設計主要的目標是利用課程中學到的資料庫知識和技術較好的開發設計出資料庫應用系統,去解決各行各業信息化處理的要求。通過這次的課程設計,可以鞏固我們對資料庫基本原理和基礎理論的理解,掌握資料庫應用系統設計開發的基本方法,進一步提高我們綜合運用所學知識的能力。
當我們這組決定做大學生就業咨詢系統時,我們並沒有著手寫程序。而是大家一起商量這個系統概述、系統目標、系統需求、業務流程分析、數據流程分析和數據詞典。當這些都准備好了之後,我們進行模塊的分工。每個人都有自己的模塊設計,而且寫出來的代碼要求可以實現相應模塊的功能,得到理想的效果。當每個人都把自己的分工做好了,最後會由一個人把這些全部組合搭建在一起。我們使用的是Html和php相互嵌套使用,當一個系統做好了之後,我會好好地把程序都看一遍,理會其中的奧秘。
知識的獲得是無止境的,只要你想學,只要你行動,沒有什麼會難倒我們的。回首這一個多星期的課程設計,我很欣慰。因為我有了動力,有了勇氣。謝謝老師對我們的不懈幫助,謝謝學校給了我們這一次實踐的機會,也謝謝組員們的關懷。這些美好的回憶美好的東西將永遠伴隨著我。
數據課程設計心得體會(二)
資料庫課程設計大賽的塵囂漸漸遠去,懷著對這次大賽的些許不舍,懷著對當初課程設計開始時候的豪情萬丈的決心的留戀,懷著通過這次課程設計積累的信心與鬥志,我開始寫這篇文章,賀老薯為自己的足跡留下哪怕是微不足道但是對自己彌足珍貴的痕跡並期望與大家共勉。
首先,讓我的記憶追溯到大二暑假,在老含李大的指引下(老大勸我學ASP(ASP培訓 ).net),我接觸到microsoft 公司的.net產品。那個時候我已經學過vc和asp,因為windows程序設計實驗的課的關系,接觸過VB(VB培訓 ),但是沒有專門去學他,因為習慣了c++裡面的class,int,覺得vb的sub,var 看著就不是很順心。我是一個好奇心很強的人,突然看到了一個號稱“.net是用於創建下一代應用程序的理想而又現實的開發工具”,而且主推c#語言,由於對c語言的一貫好感,我幾乎是立刻對他產生了興趣。我就開始了對c#的學習,任何語言都不是孤立存在的,所以數據交互是很重要的,暑假的時候我把我們這學期的課本資料庫系統概論看了一遍。我記得以前用c語言編程的時候,數據是在內存中申請空間,譬如使用數組等等。很耗費內存空間。這個時候就是資料庫站出來的時候啦,於是我又裝上了sql server2000,以前學asp的時候用的是access,那個時候只是照著人家做,理論是什麼也不是很清楚。
開發的時候我想過用什麼架構,c/s模式?模式有很多,怎麼選擇?我就上網搜索現在最流行的架構是什麼。結果搜到了mvc架構,就是你啦。我決定用這個架構,不會,沒關系,咱學。just do it!前期工作準備好後,那麼我就得把我暑假學的.net加以實踐。這個時候我更加深入的了解了利用ado.net操縱資料庫的知識。並且對資料庫裡面的存儲過程有了比較深入的了解。經過大概2個多星期的奮斗,我完成了我的資料庫課程設計--基於.net數據集的圖書館管理系統。並最後非常榮幸的獲得了大賽的一等獎以及以及新技術應用獎。
與其臨淵羨魚,不如退而結網。這次資料庫課程設計給我的最大的印象就是如果自己有了興趣,就動手去做,困難在你的勇氣和毅力下是抬不了頭的。從做這個資料庫開始無論遇到什麼困難,我都沒有一絲的放棄的念頭。出於對知識的渴望,出於對新技術的好奇,出於對一切未知的求知。我完成了這次資料庫課程設計,不過這只是我學習路上的驛站,未來十年.net的核心技術就是xml[至少微軟是這么宣傳的],我會繼續學習它禪者,包括jave公司的j2ee我也很想試試,語言本來就是相通的,just do it!語言並不重要畢竟它僅僅是工具,用好一個工具並不是一件值得為外人道的事情,主要是了解學習思想。古語說的好:學無止境啊。
實際上從學習的經歷來看,我們接觸的知識體系都是屬於比較老或比較傳統的,與現在發展迅速的IT行業相比很多情況已不再適用,尤其是當開源模式逐漸走近開發者後更是如此。雖然是一個資料庫課程設計,由於本人在選擇項目的時候是本著對自己有實際應用價值的角度考慮的,所以其中也涉及到一些資料庫以外的設計。總而言之,這次資料庫設計心得體會不能用語言完全表達。
數據課程設計心得體會(三)
本次課程設計,使我對《數據結構》這門課程有了更深入的理解。《數據結構》是一門實踐性較強的課程,為了學好這門課程,必須在掌握理論知識的同時,加強上機實踐。
我的課程設計題目是線索二叉樹的運算。剛開始做這個程序的時候,感到完全無從下手,甚至讓我覺得完成這次程序設計根本就是不可能的,於是開始查閱各種資料以及參考文獻,之後便開始著手寫程序,寫完運行時有很多問題。特別是實現線索二叉樹的刪除運算時很多情況沒有考慮周全,經常運行出現錯誤,但通過同學間的幫助最終基本解決問題。
在本課程設計中,我明白了理論與實際應用相結合的重要性,並提高了自己組織數據及編寫大型程序的能力。培養了基本的、良好的程序設計技能以及合作能力。這次課程設計同樣提高了我的綜合運用所學知識的能力。並對VC有了更深入的了解。《數據結構》是一門實踐性很強的課程,上機實習是對學生全面綜合素質進行訓練的一種最基本的方法,是與課堂聽講、自學和練習相輔相成的、必不可少的一個教學環節。上機實習一方面能使書本上的知識變“活”,起到深化理解和靈活掌握教學內容的目的;另一方面,上機實習是對學生軟體設計的綜合能力的訓練,包括問題分析,總體結構設計,程序設計基本技能和技巧的訓練。此外,還有更重要的一點是:機器是比任何教師更嚴厲的檢查者。因此,在“數據結構”的學習過程中,必須嚴格按照老師的要求,主動地、積極地、認真地做好每一個實驗,以不斷提高自己的編程能力與專業素質。
通過這段時間的課程設計,我認識到數據結構是一門比較難的課程。需要多花時間上機練習。這次的程序訓練培養了我實際分析問題、編程和動手能力,使我掌握了程序設計的基本技能,提高了我適應實際,實踐編程的能力。總的來說,這次課程設計讓我獲益匪淺,對數據結構也有了進一步的理解和認識。
數據課程設計心得體會(四)
兩個星期的時間非常快就過去了,這兩個星期不敢說自己有多大的進步,獲得了多少知識,但起碼是了解了項目開發的部分過程。雖說上過資料庫上過管理信息系統等相關的課程,但是沒有親身經歷過相關的設計工作細節。這次實習證實提供了一個很好的機會。
通過這次課程設計發現這其中需要的很多知識我們沒有接觸過,去圖書館查資料的時候發現我們前邊所學到的僅僅是皮毛,還有很多需要我們掌握的東西我們根本不知道。同時也發現有很多已經學過的東西我們沒有理解到位,不能靈活運用於實際,不能很好的用來解決問題,這就需要我們不斷的大量的實踐,通過不斷的自學,不斷地發現問題,思考問題,進而解決問題。在這個過程中我們將深刻理解所學知識,同時也可以學到不少很實用的東西。
從各種文檔的閱讀到開始的需求分析、概念結構設計、邏輯結構設計、物理結構設計。親身體驗了一回系統的設計開發過程。很多東西書上寫的很清楚,貌似看著也很簡單,思路非常清晰。但真正需要自己想辦法去設計一個系統的時候才發現其中的難度。經常做到後面突然就發現自己一開始的設計有問題,然後又回去翻工,在各種反復中不斷完善自己的想法。
我想有這樣的問題不止我一個,事後想想是一開始著手做的時候下手過於輕快,或者說是根本不了解自己要做的這個系統是給誰用的。因為沒有事先做過仔細的用戶調查,不知道整個業務的流程,也不知道用戶需要什麼功能就忙著開發,這是作為設計開發人員需要特別警惕避免的,不然會給後來的工作帶來很大的麻煩,甚至可能會需要全盤推倒重來。所以以後的課程設計要特別注意這一塊的設計。
按照要求,我們做的是機票預訂系統。說實話,我對這個是一無所知的,沒有訂過機票,也不知道航空公司是怎麼一個流程。盲目開始設計的下場我已經嘗過了,結果就是出來一個四不像的設計方案,沒有什麼實際用處。沒有前期的調查,僅從指導書上那幾條要求著手是不夠的。
在需求分析過程中,我們通過上網查資料,去圖書館查閱相關資料,結合我們的生活經驗,根據可行性研究的結果和客戶的要求,分析現有情況及問題,採用Client/Server結構,將機票預定系統劃分為兩個子系統:客戶端子系統,伺服器端子系統。在兩周的時間里,不斷地對程序及各模塊進行修改、編譯、調試、運行,其間遇到很多問題:由於忘記了一些java語言的規范使得在調試過程中一些錯誤沒有發現,通過這次課程設計,我對調試掌握得更加熟練了,意識到了程序語言的規范性以及我們在編程時要有嚴謹的態度,同時在寫程序時如有一定量的注釋,既增加了程序的可讀性,也可以使自己在讀程序時更容易。
我們學習並應用了SQL語言,對資料庫的創建、修改、刪除方法有了一定的了解,通過導入表和刪除表、更改表學會了對於表的一些操作,為了建立一個關系資料庫信息管理系統,必須得經過系統調研、需求分析、概念設計、邏輯設計、物理設計、系統調試、維護以及系統評價的一般過程,為畢業設計打下基礎。
很多事情不是想像中的那麼簡單的,它涉及到的各種實體、屬性、數據流程、數據處理等等。很多時候感覺後面的設計根本無法繼續,感覺像是被前面做的各種圖限制了。在做關系模型轉換的時候碰到有些實體即可以認為是實體又可以作為屬性,為了避免冗餘,盡量按照屬性處理了。
物理結構設計基本沒有碰到問題,這一塊和安全性、完整性不覺就會在物理結構設計中添加一些安全設置:主鍵約束、check約束、default定義等。最後才做索引的部分,對一些比較經常使用搜索的列,外鍵上建立索引,這樣可以明顯加快檢索的速度,最後別忘記重要的安全性設置,限制用戶訪問許可權,新建用戶並和資料庫用戶做相應的映射。
不管做什麼,我們都要相信自己,不能畏懼,不能怕遇到困難,什麼都需要去嘗試,有些你開始認為很難的事在你嘗試之後你可能會發現原來她並沒有你以前覺得的那樣,自己也是可以的。如果沒有自信,沒有目標,沒有信心就不可能把事情做好,當其他人都在迷茫的時候,自己一定要堅信目標,大學畢業出去即面臨找工作,從學習這個專業,到以後從事這方面的工作都需要不斷地去學習去實踐,這次實踐可以給我們敲一個警鍾,我們面臨畢業,面臨擇業,需要這些實踐經驗,在困難面前要勇於嘗試,這是這次課程設計給我的最大感想!
以上基本是這次實習的體會了,設計進行的非常艱難,編碼非常不容易,才發現做一個項目最重要的不在於如何實現,而是實現之前的需求分析和模塊設計。創新很難,有些流行的系統其實現並不難,難的在於對市場的分析和准確定位。設計,是一個任重道遠的過程。