




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、 PINGDINGSHAN UNIVERSITY RFID原理與應用課程設計題 目: 電影信息管理理系統(tǒng)的實現(xiàn) 院(系): 信息工程學院 專業(yè)年級: 物聯(lián)網工程2014級 姓 名: jjzjcjzc 學 號: csjkkcskl 指導教師: csjklks 2016年6月28日 目 錄1 緒論11.1 課題的背景及意義11.1.1 系統(tǒng)功能設計11.1.2 系統(tǒng)設計12 相關技術及工具介紹32.1 系統(tǒng)功能設計32.2 用戶信息管理功能的實現(xiàn)42.2.1 界面及數(shù)據(jù)庫設計42.2.1 RFID串口設計62.2.1 日志查看功能7附 錄9參考文獻18致 謝191 緒論在現(xiàn)實程序開發(fā)中, 我們開發(fā)
2、的最多,最廣泛的還是一些各類型的數(shù)據(jù)管理系統(tǒng),當然不同的系統(tǒng)有功能上的差異,數(shù)據(jù)庫也不一樣,但最主要,最常見的功能無外乎對數(shù)據(jù)的基本操作(增刪改查)。該簡易電影記錄管理系統(tǒng)能夠實現(xiàn)對電影記錄的各項操作。1.1 課題的背景及意義近年來隨著電影行業(yè)的快速發(fā)展,需要處理的電影信息日趨加大。為了提高電影記錄管理的管理水平,優(yōu)化資源,盡可能的降低管理成本。電影記錄管理系統(tǒng)是從電影的現(xiàn)狀出發(fā),根據(jù)電影記錄管理的新要求進行開發(fā)設計,它解決了電影記錄管理數(shù)據(jù)信息量大,修改不方便,對一系列數(shù)據(jù)進行統(tǒng)計與分析花費時間長等問題,幫助電影管理人員有效管理電影記錄信息。1.1.1 系統(tǒng)功能設計1:用戶登陸 實現(xiàn)登陸界面
3、 跳轉主頁面。2:增刪查改 實現(xiàn)電影信息的增刪查改。3:連接RFID數(shù)據(jù) 實現(xiàn)將RFID標簽數(shù)據(jù)讀入系統(tǒng)。4:密碼修改 實現(xiàn)用戶密碼修改功能,完善管理安全。5:日志查看 用于記錄和查看用戶的系統(tǒng)登錄和退出歷史。1.1.2 系統(tǒng)設計該電影信息管理系統(tǒng)所采用的技術及開發(fā)工具,涉及頁面開發(fā)技術、采用的架構、數(shù)據(jù)庫管理系統(tǒng)、web服務器及開發(fā)工具、us、IS015693讀寫器等。2 相關技術及工具介紹該電影信息管理系統(tǒng)所采用的技術及開發(fā)工具,涉及頁面開發(fā)技術、采用的架構、數(shù)據(jù)庫管理系統(tǒng)、web服務器及開發(fā)工具等。2.1 系統(tǒng)功能設計根據(jù)需求分析確定該系統(tǒng)劃分為以下幾個功能:(1) 電影記錄管理系統(tǒng)的登
4、錄模塊。 1:創(chuàng)建登陸界面,然后再添加一個登錄成功后 的跳轉窗體 name: FrmManager.cs 2:創(chuàng)建一個數(shù)據(jù)庫用于存取用戶的賬戶和密碼信息,建數(shù)據(jù)表。 3:設置 列名(字段名) 數(shù)據(jù)類型 以及 是否允許該字段為空列名分別為 用戶ID: MId 用戶名: MUserName 用戶密碼: MUserPwd 4:設置MId 的主鍵,是否自我增長標識(Identity Specification)也設置一下.將 Identity Specification 中的 Is Identity 設置為 Yes(目的是讓每插入1行新數(shù)據(jù) ID數(shù)自動+1).
5、160;設好了以后保存數(shù)據(jù)表,表名為MovieAccount. .數(shù)據(jù)表建完以后,我們需要手動插入用戶登錄系統(tǒng)所需要的用戶名和密碼 5:設置登陸界面 2.2 用戶信息管理功能的實現(xiàn)2.2.1 界面及數(shù)據(jù)庫設計用戶信息管理功能主要實現(xiàn)系統(tǒng)用戶對自己注冊信息的增刪查改。 (1) 新增數(shù)據(jù)表 我們在之前的數(shù)據(jù)庫Movie中創(chuàng)建一個Record數(shù)據(jù)表,用于存儲我們需要操作的電影記錄數(shù)據(jù),這里Id需要設置為自動增長,手動插入一些數(shù)據(jù).數(shù)據(jù)庫創(chuàng)建完成后,開始實施系統(tǒng)界面. (2)界面設計 窗體name: FrmManager 文本框 電影名稱name:txtMovie 導演 na
6、me:txtDirector 發(fā)型日期name:txtDate 按鈕 查看記錄name:btnView 刪除記錄name:btnDelete 添加記錄name:btnAdd 保存記錄name:btnSave 2.2.2RFID串口設計該功能主要是刷進電影數(shù)據(jù),通過讀卡器對電影光盤之類中的RFID標簽讀取物流信息。RFID系統(tǒng)在實際應用中,電子標簽附著在待識別物體的表面,電子標簽中保存有約定格式的電子數(shù)據(jù)。讀卡器可無接觸地讀取并識別電子標簽中所保存的電子數(shù)據(jù),從而達到自動識別物體的目的。讀卡器通過天線發(fā)送出一定頻率的射
7、頻信號,當標簽進入磁場時產生感應電流從而獲得能量,發(fā)送出自身編碼等信息,被讀取器讀取并解碼后送至電腦主機進行相關處理。2.2.3日志查看功能 1:在登錄窗體FrmLogin.cs定義3個全局變量,用于獲取登錄的用戶名,登錄情況(登錄還是退出)以及相應的時間;然后在日志查看窗體調用該全局變量并且通過使用SQ插入語句將其保存到SQL Server中,然后在訪問日志查看窗體的時候,通過窗體自動加載插入數(shù)據(jù)和查看數(shù)據(jù)的方法 2:定義3個全局變量: 1:登錄成功和退出的用戶Uid (public static string Uid;) -在第三章密碼修改功能的時候已經定義了 2:登錄成功和退出
8、的時間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) string sql = "select MUserPwd from
9、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) MessageBox.Show("系統(tǒng)登錄成功,正在跳轉主頁面.
10、"); FrmManager manager = new FrmManager(); manager.Show(); this.Hide(); else MessageBox.Show("密碼錯誤!請再次輸入!"); RFID串口設計核心代碼: 1:讀取數(shù)據(jù) private void btnRead_Click(object sender, EventArgs e) /reader.OpenSerialPort("COM1"); /System.Threading.Thread.Sleep(500); Byte data = new Byte8
11、; 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.Format("0:X21:X22:X23:X24:X25:X26:X27
12、: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.CloseSerialPort(); 2:設置串口參數(shù) public Byte OpenSerialP
13、ort(String portName) try /設置串口參數(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; /serialport.WriteTimeout = 500; serialpo
14、rt.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="insertintoRecord(Movie_Name,Movie_Director,
15、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=newSqlParameter("Movie_Name&quo
16、t;,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(); cmd.Parameters.AddRange(param); n
17、= cmd.ExecuteNonQuery(); if (n = 0) MessageBox.Show("添加失敗!"); return; else if (n > 0) MessageBox.Show("添加成功!"); conn.Close(); /調用refresh方法,在添加完成數(shù)據(jù)后 自動刷新 顯示新數(shù)據(jù) Refresh(true); 2:刪-刪除記錄 (刪除已有記錄)/刪除數(shù)據(jù)private void btnDelete_Click(object sender, EventArgs e) /使用sql刪除語句 string s
18、ql = "delete from Record where 1=1" /如果datagridview的當前行被選中 if (dgvManager.CurrentRow.Selected) /將sql語句 delete from Record where 1=1 + and Id = + 當前選中行的第0個單元格的號碼(即Id號) sql = sql + "and Id=" + Convert.ToInt32(dgvManager.CurrentRow.Cells0.Value.ToString(); int n = 0; SqlConnection c
19、onn = 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(); /刪除完后 刷新一下當前數(shù)據(jù) Refresh(); 3 改-保存記錄 (修改一條記錄)/將鼠標點擊的d
20、atagridview 上的行內容 傳遞給 文本框 private void dgvManager_CellContentClick(object sender, DataGridViewCellEventArgs e) /獲取字段名為Movie_Name的單元格內容 txtMovie.Text = dgvManager.Rowse.RowIndex.Cells"Movie_Name".Value.ToString(); /同理 獲取當前點擊行里的 name屬性為Movie_Director的單元格 獲取并將其傳至txtDirector 文本框 txtDirector.Te
21、xt = dgvManager.Rowse.RowIndex.Cells"Movie_Director".Value.ToString(); /new一個時間對象 目的是將電影發(fā)行時間的小時,分和秒給去掉 保留到最小單位為日 DateTime datetoDay = new DateTime().Date; /將當前行的日期單元格的值 賦給 時間對象datetoDay datetoDay = Convert.ToDateTime(dgvManager.Rowse.RowIndex.Cells"Date_Released".Value); /通過ToSho
22、rtDateString()方法 將日期后的00:00:00 給剔除掉 并賦給 txtDate文本框 txtDate.Text = datetoDay.ToShortDateString();4 保存記錄/更新數(shù)據(jù)操作 private void btnSave_Click(object sender, EventArgs e) /在對數(shù)據(jù)進行修改之前 對文本框的內容做一下檢查, 如果為空 則 提示重新輸入 if (txtMovie.Text.Trim() = "" | txtDirector.Text.Trim() = "" | txtDate.Text
23、.Trim() = "") MessageBox.Show("文本框的輸入不能為空!"); return; /使用SQL update 更新語句 /獲取文本框中輸入的內容, 通過Id進行更新(Id為當前鼠標點擊行的Id) string sqlUpdate = "update Record set Movie_Name ='" + txtMovie.Text + "',Movie_Director ='" + txtDirector.Text + "',Date_Releas
24、ed='" + txtDate.Text + "'where Id='" + dgvManager.CurrentRow.Cells0.Value.ToString() + "'" SqlConnection conn = new SqlConnection(connStr); SqlCommand cmdUpdate = new SqlCommand(sqlUpdate, conn); conn.Open(); int n = cmdUpdate.ExecuteNonQuery(); if (n = 0) /提
25、示更新失敗 MessageBox.Show("更新失敗!"); return;/ 并且返回 else if (n > 0) /否則更新成功 MessageBox.Show("恭喜你!更新成功!"); /執(zhí)行完數(shù)據(jù)更新操作后 需要關閉數(shù)據(jù)庫 節(jié)省資源 conn.Close(); /更新完以后 調用刷新方法,將更新后的數(shù)據(jù) 顯示在datagridview上面 Refresh();5:查-查看記錄 (查看當前所有記錄) /查看并刷新所有數(shù)據(jù) private void btnView_Click(object sender, EventArgs e) string sql = "select Id,Movie_Name,Movie_Direc
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 高質量融合的內涵與意義探討
- 2025至2030中國雞疫苗行業(yè)產業(yè)運行態(tài)勢及投資規(guī)劃深度研究報告
- 殘疾人就業(yè)促進與職業(yè)發(fā)展支持協(xié)議書
- 低碳經濟背景下綠色金融支持新能源產業(yè)發(fā)展研究
- 直播帶貨在火山口的新機遇挑戰(zhàn)與機遇并存
- 2025至2030土豆行業(yè)發(fā)展趨勢分析與未來投資戰(zhàn)略咨詢研究報告
- 行業(yè)視角下的虛擬禮物碳積分體系建設方案
- 2025至2030中國羽毛服裝行業(yè)運營態(tài)勢與投資前景調查研究報告
- 浙江大學科研培訓心得體會
- 2025至2030中國自行車壓路機行業(yè)產業(yè)運行態(tài)勢及投資規(guī)劃深度研究報告
- 12-重點幾何模型-手拉手模型-專題訓練
- 2024年河北省張家口市“三支一扶”招聘130人(高頻重點復習提升訓練)共500題附帶答案詳解
- 2023年遂寧市船山區(qū)選調教師考試真題
- CJJT259-2016 城鎮(zhèn)燃氣自動化系統(tǒng)技術規(guī)范
- 合伙人散伙分家協(xié)議書范文
- 園林綠化移樹合同
- 醫(yī)療機構保潔人員培訓
- 企業(yè)員工健康促進計劃的設計與實施
- 助理工程師答辯演示
- 成人失禁相關性皮炎的預防與護理-護理團標
- 裝載機的基礎知識-裝載機的結構及儀表
評論
0/150
提交評論