数据库系统原理课程设计报告烟台大学题目名称:客户管理系统班级:计103-1班组长学号:201058503125 姓名:刘康成绩:优组员学号:201058503108 姓名:单梦竹成绩:优组员学号:201058503130 姓名:辛冠军成绩:优组员学号:201058503127 姓名:刘巧月成绩:优2012年6月28日系统详细设计3.1 数据库的逻辑设计数据库的逻辑设计的任务就是把概念结构设计阶段的基本E-R图转化为与选用具体机器上的DBMS产品所支持的数据模型相符合的逻辑结构,首先要实现的是E-R图关系模型的转化。
而为此要解决的问题是如何将实体和实体之间的联系转化为关系模式,如何确定这些关系模式的属性和码。
对于实体,将每个实体转换为一个关系,实体的属性即为关系的属性,实体的码即为关系的码。
对于实体间的联系,可以分成三种情况:1)若实体间的联系是1:1,可以在两个实体转换成的两个关系中任意一个关系的属性中加入另一个关系的码。
2)若实体间的联系是1:n,则在n端实体转换成的关系中加入1端实体转换成的关系码。
3)若实体间的联系是n:m,则将联系转换为关系,关系的属性为诸个实体的码加上联系具有的属性,而关系的码则为诸实体的码的组合。
本系统采用了两个视图,以及存储过程中的增删改查,其中客户生日管理采用了视图将用户生日和用户名取出,只能查看不能操作。
客户(客户编号、客户姓名、性别、年龄、工作单位、公司联系地址、联系方式、生日)管理员(序号、用户名、性别、密码、)普通管理员(序号、用户名、性别、密码、权限)系统功能模块进入客户管理系统客户管理模块用户管理模块生日管理模块增加客户模块修改客户模块删除客户模块查询模块生日提醒主管理员一般管理员增加用户删除用户查看用户生日3.2 数据库实现用户管理表客户管理表生日管理视图表管理员登录视图表(1).E_R 图AdminIdnameIdname passwordlimits管理客户Clientremarkbirthdaytelladdressunitsex增加客户修改客户删除客户查询客户Idname生日管理(2)视图的应用登陆界面,取出管理员用户名和密码Create view admin_vAsSelect name,passwordFrom admin生日管理界面,查看客户姓名,客户生日,客户序列号Create view birth_vAsSelect id,name,birthdayFrom client(3)存储过程的应用BEGIN#Routine body goes here...select * from client where id=id;END3.4 程序流程图程序流程图又称为程序框图,表示方法简单直观,是最早使用的一种模念模式,是用来描述处理执行的逻辑过程的,它把程序的基本步骤归纳为:处理、判断、输入输出、起始和终结等几个基本功能,并用不同的记号加以表示,从而描述程序的执行过程。
在绘制程序流程图时使用的符号说明如下:处理输入输出判断起始终止控制方向(1) 主模块登陆页面输入密码密码正确欢迎主界面用户选择功能模块重新输入结束YNYN客户管理生日提醒退出用户管理(2)客户管理子模块NY客户管理开始用户进入客户管理页面客户管理主界面用户操作模块结束增加客户模块查询客户,模块删除客户模块修改客户模块点击结束(3)用户管理子模块NYNY下面加上我们的部分创建数据库代码用户管理进入用户管理界面 用户管理模快块增加用户删除用户 取消操作是否是主管理员 无权查看管理员用户结束创建名为ccit的数据库Create databases ccitDROP TABLE IF EXISTS `admin`;/*!40101 SET @saved_cs_client = @@character_set_client */;/*!40101 SET character_set_client = utf8 */;创建admin表CREATE TABLE `admin` (`id` int(11) NOT NULL AUTO_INCREMENT,`name` varchar(10) DEFAULT NULL,`password` varchar(20) DEFAULT NULL,`limits` varchar(10) DEFAULT NULL,PRIMARY KEY (`id`)) ENGINE=InnoDB AUTO_INCREMENT=10 DEFAULT CHARSET=gbk;/*!40101 SET character_set_client = @saved_cs_client */;---- Dumping data for table `admin`--向管理员表admin添加adminLOCK TABLES `admin` WRITE;/*!40000 ALTER TABLE `admin` DISABLE KEYS */;INSERT INTO `admin` VALUES (1,'liukang','123','1'),(3,'haha','haha','1'),(4,'admin','111','0'),(5,'taotao','123' ,'0'),(6,'user','123','0'),(8,'aa','aa','1'),(9,'姚远','123','1');/*!40000 ALTER TABLE `admin` ENABLE KEYS */;UNLOCK TABLES;创建视图admin_v---- Temporary table structure for view `admin_v`--DROP TABLE IF EXISTS `admin_v`;/*!50001 DROP VIEW IF EXISTS `admin_v`*/;SET @saved_cs_client = @@character_set_client;SET character_set_client = utf8;/*!50001 CREATE TABLE `admin_v` (`name` varchar(10),`password` varchar(20)) ENGINE=MyISAM */;SET character_set_client = @saved_cs_client;创建视图birth_v---- Temporary table structure for view `birth_v`--DROP TABLE IF EXISTS `birth_v`;/*!50001 DROP VIEW IF EXISTS `birth_v`*/;SET @saved_cs_client = @@character_set_client;SET character_set_client = utf8;/*!50001 CREATE TABLE `birth_v` (`id` int(11),`name` varchar(10),`birthday` varchar(10)) ENGINE=MyISAM */;SET character_set_client = @saved_cs_client;创建表明为client的客户管理表格---- Table structure for table `client`--DROP TABLE IF EXISTS `client`;/*!40101 SET @saved_cs_client = @@character_set_client */;/*!40101 SET character_set_client = utf8 */;CREATE TABLE `client` (`id` int(11) NOT NULL AUTO_INCREMENT,`name` varchar(10) DEFAULT NULL,`sex` enum('M','F') DEFAULT NULL,`unit` varchar(20) DEFAULT NULL,`address` varchar(30) DEFAULT NULL,`tell` varchar(12) DEFAULT NULL,`birthday` varchar(10) DEFAULT NULL,`remark` varchar(30) DEFAULT NULL,PRIMARY KEY (`id`)) ENGINE=InnoDB AUTO_INCREMENT=42 DEFAULT CHARSET=gbk;/*!40101 SET character_set_client = @saved_cs_client */;---- Dumping data for table `client`--LOCK TABLES `client` WRITE;/*!40000 ALTER TABLE `client` DISABLE KEYS */;向客户管理表格client里添加数据INSERT INTO `client` VALUES (4,'张三','M','华东电子','烟台','566787','三月四号','项目经理2'),(7,'李思','F','维多利亚','西安','123311','七月六号','人事经理'),(8,'小明','M','大润发','青岛','000999','八月九号','销售经理'),(9,'小王','F','惠百家不动产','莱山','888777','六月六号','总经理'),(24,'王华','M','中科院','北京朝阳','888999','十月一号','教授'),(25,'王五','M','烟台大学','烟台','555666','五月八号','科长'),(27,'小新','M','富家大室','000','范德萨','十月十一号','过分仨瓜'),(41,'范德萨','M','','','','','');/*!40000 ALTER TABLE `client` ENABLE KEYS */;UNLOCK TABLES;3.6.1登录界面设计为了保证系统的安全性,进入系统之前必须经过必要的安全性,简洁、清晰、友好是此设计的风格,如图3.1所示:图3.1 用户登录界面如果输入的用户名或者密码错误,就会弹出下面的窗口,见图3.2所示:图3.2 错误信息3.6.3 管理员可进入界面客户管理操作页面查询页面查询结果增加修改客户信息3.6.5 普通管理员注册界面3.6.6生日管理界面系统实现1.系统测试系统测试也将整个软件作为测试对象,将信息系统的所有组成部分包括软硬件,用户及环境等综合在一起进行测试,以保证系统的各组成部分协调进行。