77范文网 - 专业文章范例文档资料分享平台

媒体音乐播放器的设计与实现—毕业论文(3)

来源:网络收集 时间:2019-03-16 下载这篇文档 手机版
说明:文章内容仅供预览,部分内容可能不全,需要完整文档或者需要复制内容,请下载word后使用。下载word有问题请添加微信号:或QQ: 处理(尽可能给您提供完整文档),感谢您的支持与谅解。点击这里给我发消息

3 系统总体方案设计

3.1 系统设计思想

点歌管理系统主要是用来管理数据库内的歌曲,并让消费者在可视界面下运行软件。所以,该系统需要实现以下功能。

(1) 管理员能实现歌曲的添加、删除;歌手的添加、删除、歌手信息的修改。 (2) 管理员设置房间的价格、会员卡的折扣等。

(3) 消费者能实现根据歌手地区、性别、歌手的拼音、歌曲名字数、歌曲类别查询。 (4) 消费者可以查看或编辑播放列表,也可以清空播放列表。 其结构如图3-1所示。

使用点歌管理系统是为了提高管理效率及方便消费者,所以该系统应提供方便快捷的可视化界面,帮助用户高效率的完成想要的操作。考虑这些因素,点歌管理系统应达到以下目标:

(1) 提供多条件查询功能,方便用户查询歌库内的歌曲、歌手情况的各种数据。 (2) 提供多条件查询功能,方便用户查询指定歌曲、歌手的信息。 (3) 提供快捷的播放功能,及时更新数据库内的数据。 (4) 提供人性化的界面,能够为用户提供快速的查询。

根据以上分析,一个标准的点歌管理系统应该包括增加歌曲、删除歌曲、增加歌手、删除歌手、歌曲查询、歌手查询、拼音查询、歌曲数查询、单曲循环、全部循环等功能。

增加歌曲 点歌管理系统 管理员 消费者 删除歌曲 增加歌手 删除歌手 设置打折率 设置包间价格 打印小票 按歌名查询 按歌手查询 按歌曲数查询 按歌手拼音查询 按歌曲类型查询 编辑播放列表 图3-1功能结构图

3.2 系统组成设计

根据系统分析本系统主要共有5个查询界面,主界面,打印结账界面,登录界面。 (1) 歌手查询

6

歌手查询模块主要是用户根据歌手的名称来查询歌库内歌曲。查询时,用户可在文本框内输入想要查找的歌手,在该界面中的列表控件内会列出此时数据库内的所有相关歌曲,双击选择歌曲并添加到播放列表中。

(2) 歌名查询

歌名查询模块主要是用户根据歌曲的名称来查询歌库内歌曲。查询时,用户可在文本框内输入想要查找的歌曲名称,在该界面中的列表控件内会列出此时数据库内的所有相关歌曲,双击选择歌曲并添加到播放列表中。

(3) 歌曲名字数查询

歌曲名字数查询模块主要是用户根据歌名数字查询歌库内歌曲。查询时,用户可在文本框内输入想要查找的数字,在列表框内系统会列出此时数据库内所有相关歌曲,双击选择歌曲并添加到播放列表中。

(4) 歌手拼音查询

歌手拼音查询模块主要是用户根据歌手的名称来查询歌库内歌曲。查询时,用户可在文本框内输入拼音,获取数据库内相关歌曲信息,双击选择歌曲并添加到播放列表中。

(5) 歌曲类型查询

该模块主要是通过下拉列表框选择数据库内的歌曲,用户点击下拉箭头时,系统会自动绑定此时数据内己有的歌曲类型,用户只要选择,就会在列表框内查找出此时歌库内相关歌曲,双击选择歌曲并添加到播放列表中。

(6) 主界面

该窗体用于管理员登录与普通用户点歌。管理员登录时,需点击界面上方的登录按钮,正确操作后才可进入管理员界面。普通用户可以直接在该界面进行点歌操作。

(7) 登录界面

该窗体主要用于区别用户类型,方便管理员操作数据库数据。 (8) 打印界面

该窗体主要用于用户结账,选择房间号,系统自动绑定相关信息,直接结账或打印预览。

3.3 SQL Server 2005语言与数据库的连接

3.3.1 系统配置的实现

系统设有配置文件DataOperate.ini,数据库文件内放置着系统连接时登录名、密码、数据库名及可执行文件名,从数据库登陆的配置文件中读取值并赋给全局变量。读取数据库文件代码如下:

public static bool readDBInfo() { try {

String strIniPath = System.Windows.Forms.Application.StartupPath + @\

7

if (File.Exists(strIniPath)) { ClsOperateIni myIniFile = new ClsOperateIni(strIniPath);

ClsOverallVar.SetPattern(int.Parse(myIniFile.IniReadValue(\ ClsOverallVar.SetServerName(myIniFile.IniReadValue(\ ClsOverallVar.SetServerId(myIniFile.IniReadValue(\ ClsOverallVar.SetServerPwd(myIniFile.IniReadValue(\ ClsOverallVar.SetDBName(myIniFile.IniReadValue(\

return true; } else {

return false;

} }

catch {

return false;} }

3.3.2 数据库交互的实现

C#连接数据库实现:

public static SqlConnection GetConnection()

{ String strSource;

if (ClsOverallVar.GetPattern() == 0) {

strSource = \security=SSPI;Initial Catalog='\+ ClsOverallVar.GetDBName() + \

else { strSource

=

\

+

ClsOverallVar.GetDBName()

+

\

+

ClsOverallVar.GetServerName() + \+ ClsOverallVar.GetServerId() + \pwd=\+ ClsOverallVar.GetServerPwd() + \ }

SqlConnection myConn = new SqlConnection(strSource); myConn.Open(); myConn.Close(); return myConn; }

C#连接SQL Server数据库需要导入额外的命名空间,所以有了最前面的两条using命令,这是必不可少的!

using System.Data; using System.Data.SqlClient;

strSource这个变量里存放的是连接数据库所需要的连接字符串,他指定了要使用的数据提供者和要使用的数据源。

8

GetServerName()、 GetServerId()、GetServerPwd()都是直接从ini文件中读取的,这里的GetPattern()值有两个,‖0‖和‖1‖,其中0表示本地登录,1表示远程登录。使用本地登录还是远程登录只需在系统可执行文件夹下找到DataOperate.ini配置文件,修改里面的相关文件即可实现相应的数据库的连接。部分代码如下:

ClsDataContact.readDBInfo();

若为本地连接,则此处的―initial catalog=’‖+clsoverallvar.getdbname()+‖’‖:使用的数据源则为“Music”这个数据库。

在这里,建立连接对象用的构造函数为:SqlConnection。

由于系统频繁的调用数据库,而对数据的操作分为查找数据和更新数据操作两种,更新数据时不需要返回值,所以系统利用DBOperation类封装了对数据库操作的方法,以提供统一的数据库操作接口[8]。利用DBOperation类GetDataTableBySql方法可以进行查找数据函数返回一个DataTable表,DoSqlString方法可以执行一个SQL语句,进行插入、删除、修改操作。

9

4 数据库设计

本系统数据库包括管理员表、歌曲信息表、歌手信息表、包间类型表、折率表、开

户点歌表及用户播放列表。

(1) 管理员表(admin)

管理员表主要包括管理员名称及密码。表结构如表4-1所示。

字段名称 Admin adminpwd 表4-1 管理员表 含义 数据类型 用户名称 Varchar(50) 起始日期 varchar(50) 可否为空 NO NO (2) 歌曲信息表(musiclist)

歌曲信息表主要包括歌曲名称、歌曲内码、歌手名、歌曲名字数、歌曲类别、歌曲类型、歌曲存储路径。表结构如表4-2所示。

字段名称 Gsname Gqname Gqnum Gqtype Format Path Gqlogo 表4-2 歌曲信息表 含义 数据类型 歌手名称 varchar(50) 歌曲名称 varchar(50) 歌曲数 varchar(50) 歌曲类别 varchar(50) 歌曲类型 varchar(50) 歌曲路径 varchar(200) 歌曲内码 int 可否为空 NO NO NO NO NO NO NO (3) 歌手信息表(singer)

歌手信息表主要是存放歌手个人信息,便于用户采用不同类型的查询。表结构如表4-3所示。

字段名称 Sinnam Sinsex Spinyin Sinarea Slogo 表4-3 歌手信息表 含义 数据类型 歌手名称 varchar(50) 歌手性别 varchar(50) 歌手拼音 varchar(50) 歌手地区 varchar(50) 歌曲内码 Int 可否为空 NO NO NO NO NO (4) 包间类型表(room)

包间类型表主要是存放包间价格、时间、包间类型,包间类码。表结构如表4-4所示。

字段名称 roomtype Price Time roomlogo 表4-4 包间类型表 含义 数据类型 包间类型 varchar(50) 包间价格 varchar(50) 时间 varchar(50) 包间类码 varchar(50) 可否为空 YES YES YES NO (5) 折率表(abate)

打折率表主要是存放管理员设置的会员率、会员类型、会员类码。表结构如表4-5所示。

10

百度搜索“77cn”或“免费范文网”即可找到本站免费阅读全部范文。收藏本站方便下次阅读,免费范文网,提供经典小说综合文库媒体音乐播放器的设计与实现—毕业论文(3)在线全文阅读。

媒体音乐播放器的设计与实现—毕业论文(3).doc 将本文的Word文档下载到电脑,方便复制、编辑、收藏和打印 下载失败或者文档不完整,请联系客服人员解决!
本文链接:https://www.77cn.com.cn/wenku/zonghe/526937.html(转载请注明文章来源)
Copyright © 2008-2022 免费范文网 版权所有
声明 :本网站尊重并保护知识产权,根据《信息网络传播权保护条例》,如果我们转载的作品侵犯了您的权利,请在一个月内通知我们,我们会及时删除。
客服QQ: 邮箱:tiandhx2@hotmail.com
苏ICP备16052595号-18
× 注册会员免费下载(下载后可以自由复制和排版)
注册会员下载
全站内容免费自由复制
注册会员下载
全站内容免费自由复制
注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: