電影信息管理理系統(tǒng)_第1頁
電影信息管理理系統(tǒng)_第2頁
電影信息管理理系統(tǒng)_第3頁
電影信息管理理系統(tǒng)_第4頁
電影信息管理理系統(tǒng)_第5頁
已閱讀5頁,還剩18頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認(rèn)領(lǐng)

文檔簡介

1、【精品文檔】如有侵權(quán),請聯(lián)系網(wǎng)站刪除,僅供學(xué)習(xí)與交流電影信息管理理系統(tǒng)PINGDINGSHAN UNIVERSITYRFID原理與應(yīng)用課程設(shè)計題 目: 電影信息管理理系統(tǒng)的實現(xiàn) 院(系): 信息工程學(xué)院 專業(yè)年級: 物聯(lián)網(wǎng)工程2014級 姓 名: jjzjcjzc 學(xué) 號: csjkkcskl 指導(dǎo)教師: csjklks 2016年6月28日.精品文檔. 目 錄1 緒論11.1 課題的背景及意義11.1.1 系統(tǒng)功能設(shè)計11.1.2 系統(tǒng)設(shè)計12 相關(guān)技術(shù)及工具介紹32.1 系統(tǒng)功能設(shè)計32.2 用戶信息管理功能的實現(xiàn)42.2.1 界面及數(shù)據(jù)庫設(shè)計42.2.1 RFID串口設(shè)計62.2.1 日

2、志查看功能7附 錄9參考文獻18致 謝191 緒論在現(xiàn)實程序開發(fā)中, 我們開發(fā)的最多,最廣泛的還是一些各類型的數(shù)據(jù)管理系統(tǒng),當(dāng)然不同的系統(tǒng)有功能上的差異,數(shù)據(jù)庫也不一樣,但最主要,最常見的功能無外乎對數(shù)據(jù)的基本操作(增刪改查)。該簡易電影記錄管理系統(tǒng)能夠?qū)崿F(xiàn)對電影記錄的各項操作。1.1 課題的背景及意義近年來隨著電影行業(yè)的快速發(fā)展,需要處理的電影信息日趨加大。為了提高電影記錄管理的管理水平,優(yōu)化資源,盡可能的降低管理成本。電影記錄管理系統(tǒng)是從電影的現(xiàn)狀出發(fā),根據(jù)電影記錄管理的新要求進行開發(fā)設(shè)計,它解決了電影記錄管理數(shù)據(jù)信息量大,修改不方便,對一系列數(shù)據(jù)進行統(tǒng)計與分析花費時間長等問題,幫助電影管

3、理人員有效管理電影記錄信息。1.1.1 系統(tǒng)功能設(shè)計1:用戶登陸 實現(xiàn)登陸界面 跳轉(zhuǎn)主頁面。2:增刪查改 實現(xiàn)電影信息的增刪查改。3:連接RFID數(shù)據(jù) 實現(xiàn)將RFID標(biāo)簽數(shù)據(jù)讀入系統(tǒng)。4:密碼修改 實現(xiàn)用戶密碼修改功能,完善管理安全。5:日志查看 用于記錄和查看用戶的系統(tǒng)登錄和退出歷史。1.1.2 系統(tǒng)設(shè)計該電影信息管理系統(tǒng)所采用的技術(shù)及開發(fā)工具,涉及頁面開發(fā)技術(shù)、采用的架構(gòu)、數(shù)據(jù)庫管理系統(tǒng)、web服務(wù)器及開發(fā)工具、us、IS015693讀寫器等。2 相關(guān)技術(shù)及工具介紹該電影信息管理系統(tǒng)所采用的技術(shù)及開發(fā)工具,涉及頁面開發(fā)技術(shù)、采用的架構(gòu)、數(shù)據(jù)庫管理系統(tǒng)、web服務(wù)器及開發(fā)工具等。2.1 系統(tǒng)

4、功能設(shè)計根據(jù)需求分析確定該系統(tǒng)劃分為以下幾個功能:(1) 電影記錄管理系統(tǒng)的登錄模塊。 1:創(chuàng)建登陸界面,然后再添加一個登錄成功后 的跳轉(zhuǎn)窗體 name: FrmManager.cs 2:創(chuàng)建一個數(shù)據(jù)庫用于存取用戶的賬戶和密碼信息,建數(shù)據(jù)表。 3:設(shè)置 列名(字段名) 數(shù)據(jù)類型 以及 是否允許該字段為空列名分別為  用戶ID: MId   用戶名: MUserName  用戶密碼: MUserPwd 4:設(shè)置MId 的主鍵,是否自我增長標(biāo)識(Identity Specification)也設(shè)置一下.將 Identity Specification 中的 Is Id

5、entity 設(shè)置為 Yes(目的是讓每插入1行新數(shù)據(jù) ID數(shù)自動+1). 設(shè)好了以后保存數(shù)據(jù)表,表名為MovieAccount. .數(shù)據(jù)表建完以后,我們需要手動插入用戶登錄系統(tǒng)所需要的用戶名和密碼 5:設(shè)置登陸界面2.2 用戶信息管理功能的實現(xiàn)2.2.1 界面及數(shù)據(jù)庫設(shè)計用戶信息管理功能主要實現(xiàn)系統(tǒng)用戶對自己注冊信息的增刪查改。 (1) 新增數(shù)據(jù)表 我們在之前的數(shù)據(jù)庫Movie中創(chuàng)建一個Record數(shù)據(jù)表,用于存儲我們需要操作的電影記錄數(shù)據(jù),這里Id需要設(shè)置為自動增長,手動插入一些數(shù)據(jù).數(shù)據(jù)庫創(chuàng)建完成后,開始實施系統(tǒng)界面.(2)界面設(shè)計 窗體name: FrmManager

6、0; 文本框 電影名稱name:txtMovie   導(dǎo)演 name:txtDirector   發(fā)型日期name:txtDate 按鈕  查看記錄name:btnView     刪除記錄name:btnDelete  添加記錄name:btnAdd  保存記錄name:btnSave 2.2.2RFID串口設(shè)計該功能主要是刷進電影數(shù)據(jù),通過讀卡器對電影光盤之類中的RFID標(biāo)簽讀取物流信息。RFID系統(tǒng)在實際應(yīng)用中,電子標(biāo)簽附著在待識別物體的表面,電子標(biāo)簽中保存有約定格式的電子數(shù)據(jù)。讀卡器可無接觸地讀取并識別電子標(biāo)簽中所保

7、存的電子數(shù)據(jù),從而達到自動識別物體的目的。讀卡器通過天線發(fā)送出一定頻率的射頻信號,當(dāng)標(biāo)簽進入磁場時產(chǎn)生感應(yīng)電流從而獲得能量,發(fā)送出自身編碼等信息,被讀取器讀取并解碼后送至電腦主機進行相關(guān)處理。2.2.3日志查看功能 1:在登錄窗體FrmLogin.cs定義3個全局變量,用于獲取登錄的用戶名,登錄情況(登錄還是退出)以及相應(yīng)的時間;然后在日志查看窗體調(diào)用該全局變量并且通過使用SQ插入語句將其保存到SQL Server中,然后在訪問日志查看窗體的時候,通過窗體自動加載插入數(shù)據(jù)和查看數(shù)據(jù)的方法 2:定義3個全局變量: 1:登錄成功和退出的用戶Uid (public static string Uid

8、;) -在第三章密碼修改功能的時候已經(jīng)定義了 2:登錄成功和退出的時間Time  (public static DateTime Time;) 3:登錄情況Situation-2種包括"登錄"和"退出"  (public static stringSituation;)附 錄1 登陸界面的核心代碼: private void btnLogin_Click(object sender, EventArgs e) using (SqlConnection conn = new SqlConnection(connStr) str

9、ing sql = "select MUserPwd from MovieAccount where MUserName ='" + txtName.Text + "'" using (SqlCommand cmd = new SqlCommand(sql, conn) conn.Open(); using (SqlDataReader sdr = cmd.ExecuteReader() if (sdr.Read() string pwd = sdr.GetString(0).Trim(); if (pwd = txtPwd.Text)

10、MessageBox.Show("系統(tǒng)登錄成功,正在跳轉(zhuǎn)主頁面."); FrmManager manager = new FrmManager(); manager.Show(); this.Hide(); else MessageBox.Show("密碼錯誤!請再次輸入!"); RFID串口設(shè)計核心代碼: 1:讀取數(shù)據(jù) private void btnRead_Click(object sender, EventArgs e) /reader.OpenSerialPort("COM1"); /System.Threading.Thr

11、ead.Sleep(500); Byte data = new Byte8; int value = reader.GetOne(ref data); /if(value != 0) /int value = 0x01; / Inventory(data, 0x27, ref tagCount); if (value != 0) this.lblState.Text = "讀取狀態(tài):失敗,沒有得到任何有效數(shù)據(jù)。" this.txtRFIDData.Text = "" return; this.txtRFIDData.Text = String.Forma

12、t("0:X21:X22:X23:X24:X25:X26:X27:X2", data0, data1, data2, data3, data4, data5, data6, data7); /String str = String.Format("0:X21:X22:X23:X24:X25:X26:X27:X2", data0, data1, data2, data3, data4, data5, data6, data7); this.lblState.Text = "讀取狀態(tài):成功!" /reader.CloseSerialPor

13、t(); 2:設(shè)置串口參數(shù) public Byte OpenSerialPort(String portName) try /設(shè)置串口參數(shù) /serialport = new SerialPort(portName); serialport.PortName = portName; serialport.BaudRate = 115200; serialport.DataBits = 8; serialport.StopBits = StopBits.One; serialport.Parity = Parity.None; /serialport.ReadTimeout = 500; /se

14、rialport.WriteTimeout = 500; serialport.Open(); if (!serialport.IsOpen) return AllDone; /打開成功 else return SerialPortErr; /打開失敗 catch return SerialPortErr; /打開失敗電影記錄管理系統(tǒng)界面的核心代碼: 1:增-添加記錄 (添加一條新記錄) /添加數(shù)據(jù) private void btnAdd_Click(object sender, EventArgs e) int n = 0; stringsql="inserti

15、ntoRecord(Movie_Name,Movie_Director,Date_Released) values (Movie_Name,Movie_Director,Date_Released)" if (txtMovie.Text.Trim() = "" | txtDirector.Text.Trim() = "" | txtDate.Text.Trim() = "") MessageBox.Show("插入數(shù)據(jù)不能為空,請按要求插入數(shù)據(jù)!"); return; SqlParameterparam=

16、newSqlParameter("Movie_Name",txtMovie.Text), new SqlParameter("Movie_Director",txtDirector.Text), new SqlParameter("Date_Released",Convert.ToDateTime(txtDate.Text) SqlConnection conn = new SqlConnection(connStr); SqlCommand cmd = new SqlCommand(sql, conn); conn.Open();

17、cmd.Parameters.AddRange(param); n = cmd.ExecuteNonQuery(); if (n = 0) MessageBox.Show("添加失敗!"); return; else if (n > 0) MessageBox.Show("添加成功!"); conn.Close(); /調(diào)用refresh方法,在添加完成數(shù)據(jù)后 自動刷新 顯示新數(shù)據(jù) Refresh(true); 2:刪-刪除記錄 (刪除已有記錄)/刪除數(shù)據(jù)private void btnDelete_Click(object sender

18、, EventArgs e) /使用sql刪除語句 string sql = "delete from Record where 1=1" /如果datagridview的當(dāng)前行被選中 if (dgvManager.CurrentRow.Selected) /將sql語句 delete from Record where 1=1 + and Id = + 當(dāng)前選中行的第0個單元格的號碼(即Id號) sql = sql + "and Id=" + Convert.ToInt32(dgvManager.CurrentRow.Cells0.Value.ToSt

19、ring(); int n = 0; SqlConnection conn = new SqlConnection(connStr); SqlCommand cmd = new SqlCommand(sql, conn); conn.Open(); n = cmd.ExecuteNonQuery(); if (n = 0) MessageBox.Show("不存在的ID!"); return; else if (n > 0) MessageBox.Show("刪除成功!"); conn.Close(); /刪除完后 刷新一下當(dāng)前數(shù)據(jù) Refresh

20、(); 3 改-保存記錄 (修改一條記錄)/將鼠標(biāo)點擊的datagridview 上的行內(nèi)容 傳遞給 文本框 private void dgvManager_CellContentClick(object sender, DataGridViewCellEventArgs e) /獲取字段名為Movie_Name的單元格內(nèi)容 txtMovie.Text = dgvManager.Rowse.RowIndex.Cells"Movie_Name".Value.ToString(); /同理 獲取當(dāng)前點擊行里的 name屬性為Movie_Director的單元格 獲取并

21、將其傳至txtDirector 文本框 txtDirector.Text = dgvManager.Rowse.RowIndex.Cells"Movie_Director".Value.ToString(); /new一個時間對象 目的是將電影發(fā)行時間的小時,分和秒給去掉 保留到最小單位為日 DateTime datetoDay = new DateTime().Date; /將當(dāng)前行的日期單元格的值 賦給 時間對象datetoDay datetoDay = Convert.ToDateTime(dgvManager.Rowse.RowIndex.Cells"Da

22、te_Released".Value); /通過ToShortDateString()方法 將日期后的00:00:00 給剔除掉 并賦給 txtDate文本框 txtDate.Text = datetoDay.ToShortDateString();4 保存記錄/更新數(shù)據(jù)操作 private void btnSave_Click(object sender, EventArgs e) /在對數(shù)據(jù)進行修改之前 對文本框的內(nèi)容做一下檢查, 如果為空 則 提示重新輸入 if (txtMovie.Text.Trim() = "" | txtDirector.Text.Tr

23、im() = "" | txtDate.Text.Trim() = "") MessageBox.Show("文本框的輸入不能為空!"); return; /使用SQL update 更新語句 /獲取文本框中輸入的內(nèi)容, 通過Id進行更新(Id為當(dāng)前鼠標(biāo)點擊行的Id) string sqlUpdate = "update Record set Movie_Name ='" + txtMovie.Text + "',Movie_Director ='" + txtDirec

24、tor.Text + "',Date_Released='" + txtDate.Text + "'where Id='" + dgvManager.CurrentRow.Cells0.Value.ToString() + "'" SqlConnection conn = new SqlConnection(connStr); SqlCommand cmdUpdate = new SqlCommand(sqlUpdate, conn); conn.Open(); int n = cmdUpdat

25、e.ExecuteNonQuery(); if (n = 0) /提示更新失敗 MessageBox.Show("更新失敗!"); return;/ 并且返回 else if (n > 0) /否則更新成功 MessageBox.Show("恭喜你!更新成功!"); /執(zhí)行完數(shù)據(jù)更新操作后 需要關(guān)閉數(shù)據(jù)庫 節(jié)省資源 conn.Close(); /更新完以后 調(diào)用刷新方法,將更新后的數(shù)據(jù) 顯示在datagridview上面 Refresh();5:查-查看記錄 (查看當(dāng)前所有記錄) /查看并刷新所有數(shù)據(jù) private void btnView_Click(object sender, EventArgs e) string sql = "select Id,Movie_Name,Movie_Di

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論