电影信息管理系统理系统.docx

上传人:b****6 文档编号:8838358 上传时间:2023-02-02 格式:DOCX 页数:18 大小:549.84KB
下载 相关 举报
电影信息管理系统理系统.docx_第1页
第1页 / 共18页
电影信息管理系统理系统.docx_第2页
第2页 / 共18页
电影信息管理系统理系统.docx_第3页
第3页 / 共18页
电影信息管理系统理系统.docx_第4页
第4页 / 共18页
电影信息管理系统理系统.docx_第5页
第5页 / 共18页
点击查看更多>>
下载资源
资源描述

电影信息管理系统理系统.docx

《电影信息管理系统理系统.docx》由会员分享,可在线阅读,更多相关《电影信息管理系统理系统.docx(18页珍藏版)》请在冰豆网上搜索。

电影信息管理系统理系统.docx

电影信息管理系统理系统

 

电影信息管理系统理系统(总29页)

 

PINGDINGSHANUNIVERSITY

RFID原理与应用

课程设计

 

题目:

电影信息管理理系统的实现

院(系):

信息工程学院

专业年级:

物联网工程2014级

姓名:

jjzjcjzc

学号:

csjkkcskl

指导教师:

csjklks

2016年6月28日

 

1绪论

在现实程序开发中,我们开发的最多,最广泛的还是一些各类型的数据管理系统,当然不同的系统有功能上的差异,数据库也不一样,但最主要,最常见的功能无外乎对数据的基本操作(增删改查)。

该简易电影记录管理系统能够实现对电影记录的各项操作。

1.1课题的背景及意义

近年来随着电影行业的快速发展,需要处理的电影信息日趋加大。

为了提高电影记录管理的管理水平,优化资源,尽可能的降低管理成本。

电影记录管理系统是从电影的现状出发,根据电影记录管理的新要求进行开发设计,它解决了电影记录管理数据信息量大,修改不方便,对一系列数据进行统计与分析花费时间长等问题,帮助电影管理人员有效管理电影记录信息。

1.1.1系统功能设计

1:

用户登陆实现登陆界面跳转主页面。

2:

增删查改实现电影信息的增删查改。

3:

连接RFID数据实现将RFID标签数据读入系统。

4:

密码修改实现用户密码修改功能,完善管理安全。

5:

日志查看用于记录和查看用户的系统登录和退出历史。

1.1.2系统设计

该电影信息管理系统所采用的技术及开发工具,涉及页面开发技术、采用的架构、数据库管理系统、web服务器及开发工具、us、IS015693读写器等。

2相关技术及工具介绍

该电影信息管理系统所采用的技术及开发工具,涉及页面开发技术、采用的架构、数据库管理系统、web服务器及开发工具等。

2.1系统功能设计

根据需求分析确定该系统划分为以下几个功能:

(1)电影记录管理系统的登录模块。

1:

创建登陆界面,然后再添加一个登录成功后的跳转窗体name:

FrmManager.cs

2:

创建一个数据库用于存取用户的账户和密码信息,建数据表。

3:

设置列名(字段名)数据类型以及是否允许该字段为空

列名分别为 用户ID:

MId 用户名:

MUserName 用户密码:

MUserPwd

4:

设置MId的主键,是否自我增长标识(IdentitySpecification)也设置一下.将IdentitySpecification中的IsIdentity设置为Yes(目的是让每插入1行新数据ID数自动+1). 设好了以后保存数据表,表名为MovieAccount..数据表建完以后,我们需要手动插入用户登录系统所需要的用户名和密码

5:

设置登陆界面

2.2用户信息管理功能的实现

2.2.1界面及数据库设计

用户信息管理功能主要实现系统用户对自己注册信息的增删查改。

(1)新增数据表

我们在之前的数据库Movie中创建一个Record数据表,用于存储我们需要操作的电影记录数据,这里Id需要设置为自动增长,手动插入一些数据.数据库创建完成后,开始实施系统界面.

(2)界面设计

窗体name:

FrmManager 

文本框电影名称name:

txtMovie 

导演name:

txtDirector 

发型日期name:

txtDate

按钮 查看记录name:

btnView  

删除记录name:

btnDelete 添加记录name:

btnAdd 保存记录name:

btnSave

2.2.2RFID串口设计

该功能主要是刷进电影数据,通过读卡器对电影光盘之类中的RFID标签读取物流信息。

RFID系统在实际应用中,电子标签附着在待识别物体的表面,电子标签中保存有约定格式的电子数据。

读卡器可无接触地读取并识别电子标签中所保存的电子数据,从而达到自动识别物体的目的。

读卡器通过天线发送出一定频率的射频信号,当标签进入磁场时产生感应电流从而获得能量,发送出自身编码等信息,被读取器读取并解码后送至电脑主机进行相关处理。

 

 

2.2.3日志查看功能

1:

在登录窗体FrmLogin.cs定义3个全局变量,用于获取登录的用户名,登录情况(登录还是退出)以及相应的时间;然后在日志查看窗体调用该全局变量并且通过使用SQ插入语句将其保存到SQLServer中,然后在访问日志查看窗体的时候,通过窗体自动加载插入数据和查看数据的方法

2:

定义3个全局变量:

1:

登录成功和退出的用户Uid(publicstaticstringUid;) --在第三章密码修改功能的时候已经定义了

2:

登录成功和退出的时间Time (publicstaticDateTimeTime;)

3:

登录情况Situation-2种包括"登录"和"退出" (publicstaticstringSituation;)

 

附录

1登陆界面的核心代码:

privatevoidbtnLogin_Click(objectsender,EventArgse){

using(SqlConnectionconn=newSqlConnection(connStr))

{

stringsql="selectMUserPwdfromMovieAccountwhereMUserName='"+txtName.Text+"'";

using(SqlCommandcmd=newSqlCommand(sql,conn))

{

conn.Open();

using(SqlDataReadersdr=cmd.ExecuteReader()

{

if(sdr.Read())

{

stringpwd=sdr.GetString(0).Trim();

if(pwd==txtPwd.Text)

{

MessageBox.Show("系统登录成功,正在跳转主页面...");

FrmManagermanager=newFrmManager();

manager.Show();

this.Hide();

}

else

{

MessageBox.Show("密码错误!

请再次输入!

");

RFID串口设计核心代码:

1:

读取数据

privatevoidbtnRead_Click(objectsender,EventArgse)

{

//reader.OpenSerialPort("COM1");

//System.Threading.Thread.Sleep(500);

Byte[]data=newByte[8];

intvalue=reader.GetOne(refdata);

//if(value!

=0)

//intvalue=0x01;

//Inventory(data,0x27,reftagCount);

if(value!

=0)

{

this.lblState.Text="读取状态:

失败,没有得到任何有效数据。

";

this.txtRFIDData.Text="";

return;

}

this.txtRFIDData.Text=String.Format("{0:

X2}{1:

X2}{2:

X2}{3:

X2}{4:

X2}{5:

X2}{6:

X2}{7:

X2}",data[0],data[1],data[2],data[3],data[4],data[5],data[6],data[7]);

//Stringstr=String.Format("{0:

X2}{1:

X2}{2:

X2}{3:

X2}{4:

X2}{5:

X2}{6:

X2}{7:

X2}",data[0],data[1],data[2],data[3],data[4],data[5],data[6],data[7]);

this.lblState.Text="读取状态:

成功!

";

//reader.CloseSerialPort();

}

2:

设置串口参数

publicByteOpenSerialPort(StringportName)

{

try

{

//设置串口参数

//serialport=newSerialPort(portName);

serialport.PortName=portName;

serialport.BaudRate=115200;

serialport.DataBits=8;

serialport.StopBits=StopBits.One;

serialport.Parity=Parity.None;

//serialport.ReadTimeout=500;

//serialport.WriteTimeout=500;

serialport.Open();

if(!

serialport.IsOpen)

{

returnAllDone;//打开成功

}

else

{

returnSerialPortErr;//打开失败

}

}

catch

{

returnSerialPortErr;//打开失败

}

}

电影记录管理系统界面的核心代码:

1:

增-添加记录 (添加一条新记录) //添加数据

privatevoidbtnAdd_Click(objectsender,EventArgse)

{

intn=0;

stringsql="insertintoRecord(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("插入数据不能为空,请按要求插入数据!

");

return;

}

SqlParameter[]param={newSqlParameter("@Movie_Name",txtMovie.Text),

newSqlParameter("@Movie_Director",txtDirector.Text),

newSqlParameter("@Date_Released",Convert.ToDateTime(txtDate.Text))

};

SqlConnectionconn=newSqlConnection(connStr);

SqlCommandcmd=newSqlCommand(sql,conn);

conn.Open();

cmd.Parameters.AddRange(param);

n=cmd.ExecuteNonQuery();

if(n==0)

{

MessageBox.Show("添加失败!

");

return;

}

elseif(n>0)

{

MessageBox.Show("添加成功!

");

}

conn.Close();

//调用refresh方法,在添加完成数据后自动刷新显示新数据

Refresh(true);

}

2:

删-删除记录 (删除已有记录)

//删除数据

privatevoidbtnDelete_Click(objectsender,EventArgse)

{

//使用sql删除语句

stringsql="deletefromRecordwhere1=1";

//如果datagridview的当前行被选中

if(dgvManager.CurrentRow.Selected)

{

//将sql语句deletefromRecordwhere1=1+andId=+当前选中行的第0个单元格的号码(即Id号)

sql=sql+"andId="+Convert.ToInt32(dgvManager.CurrentRow.Cells[0].Value.ToString());

}

intn=0;

SqlConnectionconn=newSqlConnection(connStr);

SqlCommandcmd=newSqlCommand(sql,conn);

conn.Open();

n=cmd.ExecuteNonQuery();

if(n==0)

{

MessageBox.Show("不存在的ID!

");

return;

}

elseif(n>0)

{

MessageBox.Show("删除成功!

");

}

conn.Close();

//删除完后刷新一下当前数据

Refresh();

}

3改-保存记录 (修改一条记录)//将鼠标点击的datagridview上的行内容传递给文本框

privatevoiddgvManager_CellContentClick(objectsender,DataGridViewCellEventArgse)

{

//获取字段名为Movie_Name的单元格内容

txtMovie.Text=dgvManager.Rows[e.RowIndex].Cells["Movie_Name"].Value.ToString();

//同理获取当前点击行里的name属性为Movie_Director的单元格获取并将其传至txtDirector文本框

txtDirector.Text=dgvManager.Rows[e.RowIndex].Cells["Movie_Director"].Value.ToString();

//new一个时间对象目的是将电影发行时间的小时,分和秒给去掉保留到最小单位为日

DateTimedatetoDay=newDateTime().Date;

//将当前行的日期单元格的值赋给时间对象datetoDay

datetoDay=Convert.ToDateTime(dgvManager.Rows[e.RowIndex].Cells["Date_Released"]

.Value);

//通过ToShortDateString()方法将日期后的00:

00:

00给剔除掉并赋给txtDate文本框

txtDate.Text=datetoDay.ToShortDateString();

}

4保存记录

//更新数据操作

privatevoidbtnSave_Click(objectsender,EventArgse)

{

//在对数据进行修改之前对文本框的内容做一下检查,如果为空则提示重新输入

if(txtMovie.Text.Trim()==""||txtDirector.Text.Trim()==""||txtDate.Text.Trim()=="")

{

MessageBox.Show("文本框的输入不能为空!

");

return;

}

//使用SQLupdate更新语句

//获取文本框中输入的内容,通过Id进行更新(Id为当前鼠标点击行的Id)

stringsqlUpdate="updateRecordsetMovie_Name='"+txtMovie.Text+"',Movie_Director='"

+txtDirector.Text+"',Date_Released='"+txtDate.Text+

"'whereId='"+dgvManager.CurrentRow.Cells[0].Value.ToString()+"'";

SqlConnectionconn=newSqlConnection(connStr);

SqlCommandcmdUpdate=newSqlCommand(sqlUpdate,conn);

conn.Open();

intn=cmdUpdate.ExecuteNonQuery();

if(n==0)

{

//提示更新失败

MessageBox.Show("更新失败!

");

return;//并且返回

}

elseif(n>0)

{

//否则更新成功

MessageBox.Show("恭喜你!

更新成功!

");

}

//执行完数据更新操作后需要关闭数据库节省资源

conn.Close();

//更新完以后调用刷新方法,将更新后的数据显示在datagridview上面

Refresh();

}

5:

查-查看记录 (查看当前所有记录)

//查看并刷新所有数据

privatevoidbtnView_Click(objectsender,EventArgse)

{

stringsql="selectId,Movie_Name,Movie_Director,Date_ReleasedfromRecord";

SqlConnectionconn=newSqlConnection(connStr);

SqlCommandcmd=newSqlCommand(sql,conn);

DataTabledt=newDataTable();

SqlDataAdaptersda=newSqlDataAdapter(cmd);

sda.Fill(dt);

dgvManager.DataSource=dt;

}

6日志查看功能核心代码

if(pwd==txtPwd.Text)

{

//获取登陆成功后的用户ID

Uid=txtName.Text;

//获取当前登录时间

Time=DateTime.Now;

//获取当前用户登录的情况

Situation="登录";

//说明在该账户下密码正确,系统登录成功

MessageBox.Show("系统登录成功,正在跳转主页面...");

FrmMainmain=newFrmMain();

main.Show();

this.Hide();

 

参考文献

1:

物联网射频识别技术(RFID)技术与应用人民邮电出版社

2:

《Programming.C#》

3:

《VisualJ#》

 

致谢

本课程设计在李永明老师的悉心指导下完成的。

老师渊博的专业知识、严谨的治学态度,精益求精的工作作风,诲人不倦的高尚师德,严于律己、宽以待人的崇高风范,朴实无法、平易近人的人格魅力对本人影响深远。

不仅使本人树立了远大的学习目标、掌握了基本的研究方法,还使本人明白了许多为人处事的道理。

本次课程设计从选题到完成,每一步都是在老师的悉心指导下完成的,倾注了老师大量的心血。

在此,谨向老师表示崇高的敬意和衷心的感谢!

在写课程设计的过程中,遇到了很多的问题,在老师的耐心指导下,问题都得以解决。

所以在此,再次对老师道一声:

老师,谢谢您!

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 高等教育 > 农学

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1