建材加盟网
qq群关系数据库在线
时间:2017-04-25 06:17:58 来源:建材加盟网

篇一:仿QQ聊天系统的数据库设计与实现_ForStudent

仿QQ聊天系统的数据库设计与实现

假如你要构建《即时通讯系统》

阅读第4部分 设计你的即时通讯系统中类的关系和数据库

20140522

1 引言

数据库课程设计是指对于一个给定的应用环境,构造设计优化的数据库逻辑模

式和物理结构,并据此建立数据库及其应用系统,使之能够有效地存储和管理数据,满足用户的应用需求。信息管理要求是指在数据库中应该存储和管理哪些数据对象;数据操作要求是指对数据对象要进行哪些操作,如查询、加入、删除、修改、统计等操作。数据库课程设计的目标是为了用户和各种应用系统提供一个信息基础设施和高效率的运行环境。高效率的运行环境包括:数据库的存取效率、数据库存储空间的利用率、数据库系统运行管理的效率都是高的。本次课程设计的目的是把所学的数据库的知识应用到实践中去。现今知识已越来越受到人们的重视,仿QQ聊天系统是参考腾讯公司发布的腾讯QQ,主要运用数据库知识和C#将其初步实现[1]。

1.1课题背景

现在的信息越来越发达,很多人都在使用QQ作为聊天工具,现根据腾讯公司的QQ聊天系统制造属于自己的聊天工具,表面上看上去是仿QQ聊天系统,其实等到时机成熟可以换成别的名字,相信在不远的将来在老师和同学们的帮助下,再借助互联网,我们一定可以打造出属于自己的聊天系统。当然系统存在着很多不足,需要老师的指点和帮助。

1.2系统需求分析

QQ聊天系统是大家广泛喜欢经常应用到CS应用程序软件[2],而现在仿QQ聊天系统开发工具,是本人对其程序的深感兴趣,不但可以了解从中的业务,而且还可以加强学习,以及对知识的回顾。同时也是尽快测试此聊天程序,以便和同学进行用自己的工具来交流聊天,由于好奇心促使和同学们一起来探讨此程序的开发,这样增强同学们之间的相互交流,相互学习。

该系统属于应用程序,需要对数据的处理,比如聊天信息要既是反馈给对方,故对数据的及时更新要求较高,保证数据的真实性.该系统在任何操作系统下都可以运行,但必须装有SQL2000数据库。

2 关键技术简介

2.1 SQL Server2000

SQL Server 2000 是Microsoft 公司2000年推出的SQL Server 数据库管理系统的版本。它是一个杰出的数据库平台,可用于大型联机事务处理、数据仓库、以及电子商务等。特点: 真正的客户机/服务器体系结构, 图形化用户界面, 丰富的编程接口工具。 SQL Server与Windows NT完全集成, 具有很好的伸缩性,支持Web技术。 SQL Server提供数据仓库功能[3]。

2.2 C#简介

C#是从C和C++派生来的一种简单、现代、面向对象和类型安全的编程语言。C#是用于创建运行在.NET公共语言运行库上的应用程序的语言之一,它从C语言和C++语言演化而来,是Microsoft专门使用.NET平台而创建的,并且考虑了其他语言的许多有点。

由于语法简单,使用C#开发应用程序比C++程序相对简单。但是,C#也是一种强大的语言,在C++中能完成的任务在C#中同样也能完成。C#的代码要比C++略长些,这是因为C#是一种类型安全的语言(与C++不同),虽然C#的代码略长但其代码更健壮,调试也比较简单。

C#是唯一为.NET Framework而设计的语言,是移植到其他操作系统上的.NET版本中使用的主要语言,能使用.NET Framework代码库提供的每种功能。反之,如果要使用VB.NET等语言尽可能与其以前的语言类似,而且仍然遵循CLR,这些语言就不能完全支持.NET代码库的某些功能。C#可以创建Windows应用程序,Web应用程序,Web服务这几种常见的应用程序[4]。具体实现如下:

1:首先根据对其业务逻辑的分析极其全面整合,加之我们所熟悉的QQ聊天技术。第一应该做的是界面,界面的美化程度直接反映着用户对此软件喜欢程度,所以借助了互联网搜索了一些好看的图片;

2:对界面的设计,这里所用到的就是C#里布局控件,精心的布局,这一点众所周之C#里丰富的控件为我们提供了方便,这样做就可以尽可能的让用户用起来比较舒服;

3:各个窗体画好后,接下来自然就是业务逻辑层的代码书写了,由于学习不够精,所以在书写代码方便并没有用到三层技术,但是本人对该系统考虑的比较全面,一些错误和异常都可以将其打印出来

书写代码比较规范,不管从类的书写,还是一些命名都非常规范;

C#里提供丰富的控件库,本来就可以自动生成一些代码,对业务逻辑比较明朗,对方法和类之间的命名比较规范,书写代码自然比较快,出错率比较少;方法就是增删改查,

最后结合数据库技术完成业务逻辑。

3 数据库概念结构设计

3.1 构思E-R图原则

原则1:能独立存在的事物,例如人、物、事、活动、事项等等,在其有多个基本项描述的特性需要关注时,就应把它作为实体。

根据原则1,分析本系统中的实体主要有用户、星座、信息类型、聊天信息、好友策略、好友和血型。

原则2:两个或多个实体间的关联与结合,如主管、从属、组成、占有、作用、配合、协同等等,当需要予以关注时,应作为联系。联系通常是某类行为动作,E-R图关注的是其状态与结果而非其过程。

根据原则2,对本系统间的实体之间的关联进行分析,用户与星座、血型、好友策略之间有组成与被组成的关系;在这里解释一下所谓的好友策略,我们在聊天时,别人可能会加我们为好友,我们可以不通过系统的提示,自动允许,这是一种策略。另外一种策略就是别人要加我们为好友时,先通过系统信息请求我们是否同意。此外,QQ消息和消息类型之间也有组成与被组成的关系。

原则3:实体的属性是实体的本质特征。实体应有标识属性,并指定其中一个作为主标识。联系的属性是联系的结果或状态。属性具有如下几个特点:非多值性、非复合性、非导出性。实体的属性还应有非关联性。

根据原则3,分析本系统中的实体属性。QQ用户的属性包括QQ号(标识属性)、QQ密码、用户昵称、用户真实姓名、性别和年龄等;星座的属性包括星座的编号(标识属性)和名称;血型的属性包括血型编号(标识属性)和名称;好友策略的属性包括策略编号(标识属性)和策略名称;消息类型包括消息类型编号(标识属性)和消息类型名称;QQ消息的属性包括消息记录编号(标识属性)、消息记录名称、消息接受状态和接发消息的时间

原则4:所有基本项在同一E-R图中作为属性要在仅在一个地方出现[5]。

3.2设计E-R图

根据构思E-R图的原则联系本系统的需求分析,将数据库中所涉及的各个实体与

它们各自的属性以及各个实体之间的关联用E-R图的形式表现出来,实体用方形表示,属性用椭圆表示,关联关系用没有箭头的直线连接,具体如下图3.1所示:

图3.1QQ系统E-R图

3.3 E-R图向关系模型转换原则

(1) 一个1:1联系可以转换为一个独立的关系模式,也可以与任意一端对应的关

系模式合并。如果转换为一个独立的关系模式,则与该联系相连的各实体的码以及联系本身的属性均转换为关系的属性,每个实体的码均是关系的候选码。如果与某一端实体对应的关系模式合并,则需要在改关系模式的属性中加入另一个关系模式的码和联系本身的属性。

(2)一个1:n联系可以转换为一个独立的关系模式,也可以与n端对应的关系模式合并。如果转换为一个独立的关系模式,则与该联系相连的各实体的码以及联系本身的属性均转换为关系的属性,而关系的码为n端实体的码。

(3)一个m:n联系转换为一个关系模式。与该联系相连的各实体的码以及联系本身的属性均转换为关系的属性,各实体的码组成关系的码或关系码的一部分。

篇二:《数据库程序设计》汇总-在线测试

A、数据定义功能 B、数据操作功能 C、数据通讯功能 D、控制和管理功能

3、VFP的交互操作方式有

A、批处理 B、命令执行方式 C、图形界面操作 D、程序执行方式

4、数据库系统的特点是

A、能实现数据共享 B、数据结构化更强 C、数据独立性 D、可控冗余度 E、适合网络传送

5、项目管理器可以对项目中的 进行管理。

A、文档 B、数据表 C、程序 D、菜单 E、类库

第三题、判断题(每题1分,5道题共5分)

1、VFP菜单项名称中出现的带下划线的英文字母代表该菜单项的访问键

正确

错误

A、drop stock C、del_ete stock

B、drop TABLE stock D、del_ete TABLE stock

第二题、多项选择题(每题2分,5道题共10分) 1、一个表打开时,那些文件会被打开

A、.dbf文件 B、相关的所有文件 C、备份文件

D、如果有备注,相应的.fpt文件也被打开

2、有关文件关闭,正确的说法是 。

A、文件关闭指文件被写保护。

B、文件关闭指将内存中的数据保存到磁盘文件中。 C、文件关闭可以防止操作结束后数据的丢失。

D、当打开一个新表时,该工作区中原来打开的文件自动关闭。 E、VFP能自动关闭表,所以不用use命令关闭表也可以。

3、命令窗口不显示时,要使它再现,可以用

A、窗口菜单 B、SHIFT+F2 C、CTRL+F2 D、数据工作期 E、项目管理器

4、能获得当天日期的表达式或函数为

A、_diarydate B、date() C、time()

D、year(date())

5、在SB表中,显示所有价格大于10000的主要设备。

A、list for 价格>10000 and 主要设备 B、list for 价格>10000 or 主要设备 C、list for 价格>10000 and 主要设备=t D、list for 价格>10000 and 主要设备=.t. E、list for 价格>10000 or 主要设备=.t. F、list for 价格>10000 or 主要设备=t

第三题、判断题(每题1分,5道题共5分) 1、数值型字段的值,正负号和小数点都必须占一位。

正确

错误

2、定义一个数组:dime a(9),则各数组元素的初始值为0。

正确

错误

3、表达式"abc">"aaaaaaaaaaa"的结果为假。

正确

错误

4、表达式{12/31/99}-{12/31/98}的结果365

正确

错误

5、ins_ert , append命令都是既可以一次增加一条新记录,也可以一次增加一批新记录。

正确

错误

篇三:【在线】电子科大17春《大型数据库基础》在线作业3

一、单选题(共 20 道试题,共 100 分。) V 1. 以下那种类型能作为变量的数据类型( )。

A. text

B. ntext

C. table

D. image

2. 每个数据库有且只有一个( )

A. 主要数据文件

B. 次要数据文件

C. 日志文件

D. 索引文件

3. SQL Server 2000 的恢复模式包括3 种:简单恢复模式、完整恢复模式、大容量日志恢复模式,下面( )备份操作可以在简单恢复模式下进行。

A. 日志加差异备份

B. 差异备份

C. 完整备份

D. 事务日志备份

4. 下列用于删除数据库表的命令是 ( )

A. Create table

B. Alter table

C. Drop table

D. Modify table

5. 你在 SQL Server 的查询分析器中使用T-SQL 语句查询数据,你想要使用Like 关键字来匹配单个字符,那么其通配符是( )。

A. %

B. *

C. #

D. _

6. 新安装SQL Server后,默认有六个内置的数据库,其中的两个范例数据库是Pubs和( )。

A. master

B. NorthWind

C. msdb

D. bookdb

7. 用于存放系统及信息的数据库是( )。

A. MASTER

B. TEMPDB

C. MODEL

D. MSDB

8. 在SQL Server 2000中,当数据表被修改时,系统自动执行的数据库对象是( )。

A. 存储过程

B. 触发器

C. 视图

D. 其他数据库对象

9. 下列哪个属于全外连接( )

A. Join

B. Full Outer Join

C. Left Outer Join

D. Right Outer Join

10. SQL Server提供的单行注释语句是使用( )开始的一行内容。

A. “/*”

B. “--”

C. “{”

D. “/”

11. 下列哪个能用于创建聚簇索引的关键字( )

A. Nonclustered

B. Clustered

C. Unique

D. Check

12. 在SQL Server 2000中,索引的顺序和数据表的物理顺序相同的索引是( )。

A. 聚集索引

B. 非聚集索引

C. 主键索引

D. 唯一索引

13. SQL 语言按照用途可以分为三类,下面选项中哪一种不是的:( )

A. DML

B. DCL

C. DQL

D. DDL

14. 下列四项中,不正确的提法是( )。

A. SQL语言是关系数据库的国际标准语言

B. SQL语言具有数据定义、查询、操纵和控制功能

C. SQL语言可以自动实现关系数据库的规范化

D. SQL语言称为结构查询语言

15. 在SQL SERVER 2000中,能正确地创建视图的命令是( )

A. CREATE DATABASE

B. CREATE View

C. CREATE Table

D. CREATE Index

16. 用于数据库恢复的重要文件是( )。

A. 数据库文件

B. 索引文件

C. 备注文件

D. 日志文件

17. 要查询book表中所有书名中以“计算机”开头的书籍的价格,可用( )语句。

A. SELECT price FROM book WHERE book_name = ‘计算机*’

B. SELECT price FROM book WHERE book_name LIKE ‘计算机*’

C. SELECT price FROM book WHERE book_name = ‘计算机%’

D. SELECT price FROM book WHERE book_name LIKE ‘计算机%’

18. 在使用Union 的联合查询语句中,下列哪个字段类型可包含语句中( )

A. TEXT

B. CHAR

C. BINARY

D. NTEXT

19. 存储过程是SQL Serevr服务器上一组预先定义并编译好的T-SQL程序,它可以( )。

A. 接受参数、返回状态值和参数值,也可以嵌套调用。

B. 接受参数、返回状态值和参数值,但不可以嵌套调用

C. 接受参数、嵌套调用,但不可以返回状态值和参数值

D. 返回状态值和参数值,也可以嵌套调用,但不能接受参数

20. 以下运算符中优先级最低的是( )。

A. 加(+)

B. 等于(=)

C. like

D. 赋值(=)


qq群关系数据库在线
由:建材加盟网互联网用户整理提供,链接地址:
http://m.yuan0.cn/a/9049.html
转载请保留,谢谢!
最近更新/ NEWS
推荐专题/ NEWS