SQLserver数据库课程设计范例
数据库技术与应用-SQLServer2000篇课程设计

数据库技术与应用-SQLServer2000篇课程设计一、实验目的本次课程设计旨在帮助学生掌握SQLServer2000的基本使用方法,了解数据库设计的基本原则,培养学生良好的数据管理能力,提高数据处理能力。
二、实验内容1.数据库设计1.1 学生信息表字段名数据类型空值主键学生编号int not null 是学生姓名nvarchar(20) not null性别nvarchar(2) not null年龄int not null民族nvarchar(10) not null联系方式nvarchar(20) not null地址nvarchar(50) not null1.2 教师信息表字段名数据类型空值主键字段名数据类型空值主键教师编号int not null 是教师姓名nvarchar(20) not null性别nvarchar(2) not null年龄int not null教育背景nvarchar(50) not null联系方式nvarchar(20) not null1.3 课程信息表字段名数据类型空值主键课程编号int not null 是课程名称nvarchar(20) not null学分int not null教师编号int not null1.4 成绩信息表字段名数据类型空值主键成绩编号int not null 是学生编号int not null课程编号int not null成绩int not null2.实验操作2.1 数据库连接2.1.1 打开SQL Server Management Studio(简称SSMS)2.1.2 输入SQLServer用户名和密码登录2.1.3 新建数据库,命名为“学生管理系统”2.1.4 创建上述四个表2.2 数据库操作2.2.1 增加数据2.2.2 修改数据2.2.3 删除数据2.3 数据查询2.3.1 查询特定数据2.3.2 查询符合条件的数据2.3.3 求数据的总和、平均值、最大值、最小值等三、实验步骤3.1 配置SQL Server Management Studio3.2 创建新的数据库并与之连接3.3 创建上述四个表,并加入表中数据3.4 使用SQL语言进行数据的增加、修改、删除3.5 使用SQL语言进行数据的查询3.6 使用SQL语言进行数据汇总四、实验总结通过本次课程设计,我掌握了SQLServer2000的基本使用方法,了解了数据库设计的基本原则,并且培养了良好的数据管理能力,提高了自己的数据处理能力,使我更加熟练地运用SQL Server Management Studio进行高效的数据管理。
《SQL Server 数据库设计》课程设计报告示例

《SQL Server 数据库设计》课程设计报告课题名称:学生管理系统__班级:_09软大1班_学号:________姓名:________完成日期:_______课程设计报告内容项目名称姓名其他参与人员本人在本项目中主要完成的工作完成任务的体会一、系统分析(一)系统的需求分析:1、系统目标:本系统将实现用计算机管理学生的学习信息的功能。
具体完成班级信息管理、学生信息管理、课程信息管理、学生选课管理等功能。
2、系统的功能需求:本系统用户分为普通用户和超级用户两类,超级用户负责系统的维护,包括对班级信息、学生信息、课程信息的录入、修改、查询、删除等。
普通用户即学生只具有自己选择课程的权限、查看课表和自己成绩的权限。
3、系统功能划分:用户通过身份验证后进入主界面。
主界面为超级用户提供6项选择:学生信息管理、课程信息管理、班级信息管理、选课、密码修改和退出系统。
普通用户有4项选择:选课、课程查询、密码修改和退出系统。
(二)系统的功能分析:A、班级信息管理:给出所有班级列表,只有超级用户可以实现增加、修改、查询、删除班级信息,维护指定班级所有学生信息,为指定班级设置必修课和选修课以及学分限制等功能。
在维护指定班级信息功能中,只有超级用户可以增加、修改、删除学生信息,查看某一学生选课情况,为学生更改口令等功能。
在指定班级必修课功能中,以课程表形式列出所有必修课信息,可以实现为一个班级增加或删除必修课的功能。
B、学生信息管理:给出所有学生的列表,超级用户可以增加、修改、删除学生信息,查看学生信息,查看某个学生选课情况,为学生修改口令等功能。
本功能与班级信息维护功能中的维护指定班级学生信息功能相似,不同是本功能是列出所有班级的所有学生信息。
C、课程管理信息:超级用户可以增加、修改、删除课程信息,查看某门课程的选课情况,查看指定课程的信息。
D、选课:以课程表的形式列出学生的选课情况,学生可以为自己选修或者退选课程,而超级用户可以为任何学生选修或者退选课程。
《SQLserver数据库》课程设计范例

《SQLserver数据库》课程设计范例1 概述1.1课题简介书店书目书种繁多,来源多样,购买者众多,图书信息、供应商信息、客户信息、销售信息庞大,不易管理。
因此,很有必要创建一个小型书店管理系统,以便于书店对图书的管理。
1.2设计目的应用对数据库系统原理的理论学习,通过上机实践的方式将理论知识与实践更好的结合起来,巩固所学知识。
数据库应用课程实践:实践和巩固在课堂教学中学习有关知识,熟练掌握对于给定结构的数据库的创建、基本操作、程序系统的建立和调试以及系统评价。
数据库原理软件设计实践:实践和巩固在课堂教学中学习的关于关系数据库原理的有关知识和数据库系统的建立方法,熟练掌握对于给定实际问题,为了建立一个关系数据库信息管理系统,必须得经过系统调研、需求分析、概念设计、逻辑设计、物理设计、系统调试、维护以及系统评价的一般过程,为毕业设计打下基础。
1.3设计内容运用基于E-R 模型的数据库设计方法和关系规范化理论做指导完成从系统的分析到设计直至系统的最终实现,开发小型书店管理系统,完成小型书店管理系统的全部功能。
首先做好需求分析,并完成数据流图和数据字典。
其次做概念分析,利用实体联系的方法将需求分析的用户需求抽象为信息结构,得到E-R 图。
然后就是逻辑结构设计,将E-R 图转换为计算机系统所支持的逻辑模型2 需求分析2.1功能分析首先,建立一些基本表(尽可能满足3N),对大部分基本信息组合、存储;其次通过建立视图实现对冗余数据的有必要保留(查询并计算基本表属性得到新的作为视图属性)并实现对以下基本信息的显示。
图书信息:图书名称、订购数量、订购时间、订购单价、金额、出版社名称、作者名称;供应商名称等;供应商信息:供应商名称、地址、电话,联系人;客户信息:客户编号、名称、年龄、性别、累计购书金额等;销售信息:时间、销售名称、数量、销售单价、客户编号、客户名称、金额等。
在此基础上进行以下目标查询,由于有些查询常用且较复杂,为了简化其应用,所以将它们定义为存储过程。
数据库sqlserver课程设计

数据库sqlserver课程设计一、课程目标知识目标:1. 学生能理解SQL Server数据库的基本概念,掌握数据库的结构和设计原则;2. 学生能掌握SQL Server的数据查询语言(DQL),包括SELECT、WHERE、GROUP BY、ORDER BY等子句的使用;3. 学生能掌握SQL Server的数据操纵语言(DML),如INSERT、UPDATE、DELETE等命令的使用;4. 学生能理解事务处理的概念,掌握事务的使用和事务日志的作用;5. 学生了解SQL Server的安全性和权限控制,能够实施基本的数据库安全策略。
技能目标:1. 学生能够独立创建和管理SQL Server数据库,包括表、索引、视图等数据库对象;2. 学生能够编写复杂的SQL查询语句,进行数据检索和统计分析;3. 学生能够使用SQL Server Management Studio(SSMS)进行数据库管理和维护;4. 学生能够运用事务处理确保数据的一致性和完整性;5. 学生能够实施简单的数据库安全策略,保护数据不被未授权访问。
情感态度价值观目标:1. 学生通过学习SQL Server数据库课程,培养对数据库管理和信息处理的兴趣,增强信息素养;2. 学生在学习过程中,培养合作精神,学会与他人共同解决问题,提高沟通能力;3. 学生认识到数据库在现实生活中的广泛应用,增强对所学知识实用性的认识;4. 学生意识到数据安全的重要性,树立正确的信息安全观念,遵守信息道德规范。
本课程针对高年级学生,在已有计算机基础知识和编程能力的基础上,进一步深入学习SQL Server数据库的知识。
课程注重理论与实践相结合,通过案例分析和实际操作,帮助学生掌握数据库技术,提高实际应用能力。
课程目标旨在使学生具备独立设计和使用数据库系统的能力,为未来从事相关领域工作奠定基础。
二、教学内容1. SQL Server简介与安装- SQL Server的发展历程与特点- SQL Server的安装与配置2. 数据库基础知识- 数据库的概念与分类- 关系型数据库的基本理论- SQL Server数据库结构3. 数据查询语言(DQL)- SELECT语句及其子句- 聚合函数与分组查询- 子查询与联接查询4. 数据操纵语言(DML)- INSERT、UPDATE、DELETE命令- 事务处理与事务日志- 数据一致性与完整性约束5. 数据库对象- 表、索引、视图的创建与管理- 存储过程、触发器、函数的编写与应用6. SQL Server安全管理- 数据库用户与角色- 权限控制与数据加密- 备份与恢复策略7. 实践项目- 设计并实现一个简单的数据库应用系统- 数据库性能优化与维护- 数据库安全性评估与改进教学内容根据课程目标,按照由浅入深的顺序进行组织,涵盖SQL Server数据库的基本概念、操作、管理和安全策略等方面。
SQLServer实验指导第三版课程设计 (2)

SQLServer实验指导第三版课程设计一、实验内容本实验旨在通过 SQLServer 数据库的实际操作,帮助学生掌握关系数据库的创建、查询、修改和删除等基础操作,并了解 SQLServer 的相关特性和配置。
二、实验环境本实验需要安装 SQLServer 数据库管理系统,并在该系统上创建相应的数据库和表格。
建议安装 SQLServer 2012 以上版本,并在操作系统上安装相应的Microsoft .NET Framework。
三、实验步骤3.1 数据库创建使用 SQLServer 数据库管理系统,创建名为 student 的新数据库。
其中,用到的语句如下:CREATE DATABASE student;3.2 数据表创建在创建好的 student 数据库中,创建名为 score 的新数据表。
其中,用到的语句如下:USE student;GOCREATE TABLE score (id INT PRIMARY KEY,name VARCHAR(50),score INT);3.3 数据插入向 score 表格中插入一些测试数据,供后续操作使用。
其中,用到的语句如下:INSERT INTO score VALUES (1, 'Kobe', 98);INSERT INTO score VALUES (2, 'Lebron', 95);INSERT INTO score VALUES (3, 'Jordan', 99);3.4 数据查询查询 score 表格中的所有数据,显示每个学生的姓名和分数。
其中,用到的语句如下:SELECT name, score FROM score;3.5 数据更新将 id 为 1 的学生的分数修改为 99 分。
其中,用到的语句如下:UPDATE score SET score = 99 WHERE id = 1;3.6 数据删除删除 id 为 2 的学生的记录。
《sqlserver数据库》课程设计范例

《sqlserver数据库》课程设计范例一、教学目标本课程的教学目标是使学生掌握SQL Server数据库的基本理论、操作方法和应用技巧。
通过本课程的学习,学生将能够:1.知识目标:理解数据库的基本概念、原理和SQL Server数据库的特点;掌握SQL语言的基本语法和用法,包括数据定义、数据查询、数据更新和数据控制;了解数据库设计和建立的基本步骤。
2.技能目标:能够使用SQL Server数据库管理系统进行数据库的创建、维护和管理;能够编写简单的SQL查询语句进行数据的增、删、改、查操作;能够进行数据库的安全性和完整性设置。
3.情感态度价值观目标:培养学生对数据库技术的兴趣和好奇心,提高学生的问题解决能力和创新意识;培养学生的团队协作精神和良好的编程习惯。
二、教学内容本课程的教学内容主要包括以下几个部分:1.SQL Server数据库的基本概念和特点:数据库的概念、发展历程、数据模型、SQL Server的特点。
2.SQL语言的基本语法和用法:数据定义语言(DDL)、数据查询语言(DQL)、数据更新语言(DML)、数据控制语言(DCL)。
3.数据库的创建和管理:数据库的创建、维护、备份和恢复。
4.数据的增、删、改、查操作:使用SQL语句进行数据的添加、删除、修改和查询。
5.数据库的安全性和完整性设置:用户管理、权限分配、约束设置等。
三、教学方法本课程采用多种教学方法相结合的方式,以激发学生的学习兴趣和主动性:1.讲授法:讲解SQL Server数据库的基本概念、原理和SQL语言的语法。
2.案例分析法:通过实际案例让学生掌握数据库的创建、维护和管理方法。
3.实验法:让学生动手实践,进行数据库的创建、数据的增、删、改、查操作以及安全性和完整性设置。
4.讨论法:学生进行小组讨论,分享学习心得和经验,提高团队协作能力。
四、教学资源本课程所需的教学资源包括:1.教材:《SQL Server数据库教程》。
SQLServer数据库管理.开发与实践课程设计

SQLServer数据库管理.开发与实践课程设计一、前言本文档是SQLServer数据库管理.开发与实践课程的设计文档。
在本课程中,我们将深入了解SQLServer数据库管理和开发的技能。
我们将探索各种关键概念、技术和技能,从基本的SQLServer数据库管理和编程技巧到高级DBA任务和编程要求。
我们将使用SQLServer数据库来创建、管理和优化各种类型的数据库和应用程序。
二、课程设计目标该课程的主要目的是使学生能够掌握SQLServer数据库的基本管理和开发技能。
在完成本课程后,学生将能够:•使用SQLServer数据库管理工具来创建和管理关系型数据库;•设计和编写SQLServer数据库的实现和管理计划;•通过了解SQLServer数据库的基本原理并运用常见的SQL查询来确定、优化和优化数据库设计;•实施数据备份和恢复政策,以确保恢复能力;•了解SQL Server数据库的复制、故障转移、性能调整和其他关键管理和开发主题。
三、课程设计内容3.1 数据库基础•数据库基本概念;•数据库管理系统简介;•数据库设计的基本流程;•数据库篇本设计范式。
3.2 SQL入门•SQL语言基础;•SQL语句的分类;•在SQLServer中执行SQL语句;•SQLServer的数据类型;•约束、程序、触发器和视图的使用。
3.3 SqlServer高级特性•SQLServer的索引和视图;•应用物理设计和规范;•SQLServer的监视和优化;•SQLServer的备份与恢复;•SQLServer的安全性和权限控制。
3.4 SqlServer高级编程•使用存储过程和触发器实现复杂的交易处理;•动态SQL和指针;•CLR的使用。
四、课程设计要求本课程设计是一个以SQLServer数据库为背景的基本数据库管理和开发项目。
学生需要执行以下任务:1.数据库设计和规划:学生需要设计一个包含必要数据表、视图、触发器、存储过程、索引和约束的SQLServer数据库。
sqlsever数据库课程设计

sql sever数据库课程设计内容如下:一、课程目标知识目标:1. 熟练掌握SQL Server数据库的基本概念和原理;2. 学会使用SQL语句进行数据库的增删改查操作;3. 掌握数据库表的设计与关系维护;4. 了解数据库的安全性和事务处理。
技能目标:1. 能够独立安装和配置SQL Server数据库环境;2. 能够运用SQL语句完成常见的数据操作;3. 能够设计简单的数据库表,并进行关系维护;4. 能够对数据库进行简单的安全性和事务处理。
情感态度价值观目标:1. 培养学生对数据库技术的兴趣,提高其学习积极性;2. 培养学生良好的团队协作精神,提高沟通能力;3. 培养学生严谨、细心的学习态度,注重实际操作能力的培养;4. 增强学生的信息安全意识,注重数据保护。
课程性质:本课程为实践性较强的课程,注重学生动手能力的培养。
学生特点:学生具备一定的计算机操作基础,对数据库技术有一定了解,但实践经验不足。
教学要求:结合学生特点,注重理论与实践相结合,强化实践操作,使学生在掌握基本知识的基础上,提高实际操作能力。
在教学过程中,关注学生的情感态度价值观的培养,激发学生的学习兴趣,提高其综合素质。
通过本课程的学习,使学生具备一定的数据库设计与操作能力,为后续相关课程的学习打下坚实基础。
二、教学内容1. SQL Server数据库概述:介绍SQL Server的发展历程、特点和应用场景,使学生了解数据库的基本概念和SQL Server的优势。
- 教材章节:第一章 SQL Server概述2. SQL Server安装与配置:指导学生独立安装和配置SQL Server数据库环境,熟悉SQL Server Management Studio(SSMS)操作界面。
- 教材章节:第二章 SQL Server安装与配置3. SQL语句基础:讲解SQL语句的基本语法,包括SELECT、INSERT、UPDATE和DELETE等操作,使学生掌握数据库的增删改查操作。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
1 概述1.1课题简介书店书目书种繁多,来源多样,购买者众多,图书信息、供应商信息、客户信息、销售信息庞大,不易管理。
因此,很有必要创建一个小型书店管理系统,以便于书店对图书的管理。
1.2设计目的应用对数据库系统原理的理论学习,通过上机实践的方式将理论知识与实践更好的结合起来,巩固所学知识。
数据库应用课程实践:实践和巩固在课堂教学中学习有关知识,熟练掌握对于给定结构的数据库的创建、基本操作、程序系统的建立和调试以及系统评价。
数据库原理软件设计实践:实践和巩固在课堂教学中学习的关于关系数据库原理的有关知识和数据库系统的建立方法,熟练掌握对于给定实际问题,为了建立一个关系数据库信息管理系统,必须得经过系统调研、需求分析、概念设计、逻辑设计、物理设计、系统调试、维护以及系统评价的一般过程,为毕业设计打下基础。
1.3设计内容运用基于E-R 模型的数据库设计方法和关系规范化理论做指导完成从系统的分析到设计直至系统的最终实现,开发小型书店管理系统,完成小型书店管理系统的全部功能。
首先做好需求分析,并完成数据流图和数据字典。
其次做概念分析,利用实体联系的方法将需求分析的用户需求抽象为信息结构,得到E-R 图。
然后就是逻辑结构设计,将E-R 图转换为计算机系统所支持的逻辑模型2 需求分析2.1功能分析首先,建立一些基本表(尽可能满足3N),对大部分基本信息组合、存储;其次通过建立视图实现对冗余数据的有必要保留(查询并计算基本表属性得到新的作为视图属性)并实现对以下基本信息的显示。
图书信息:图书名称、订购数量、订购时间、订购单价、金额、出版社名称、作者名称;供应商名称等;供应商信息:供应商名称、地址、电话,联系人;客户信息:客户编号、名称、年龄、性别、累计购书金额等;销售信息:时间、销售名称、数量、销售单价、客户编号、客户名称、金额等。
在此基础上进行以下目标查询,由于有些查询常用且较复杂,为了简化其应用,所以将它们定义为存储过程。
查询当月书店销售金额、营业金额;(存储过程)查询某种图书库存数量;(存储过程)查询当月销量最好的图书信息;(存储过程)按供应商名称查询订购信息;(普通查询)查询购买次数超过3次的客户信息。
(普通查询)接着根据需要建立触发器、存储过程、索引,实现对数据库的优化。
最后,进行过程功能的验证。
允许具有权限者对数据库进行数据更新和查询等合法操作。
数据流图用流程图来描述处理过程与数据的关系数据流图如下:图书目录文购买信息文出版社档案文件用户购买信息图书需求用户供应商供应信息图书供应供应商信息处理信息处理顾客购书档案文件购买供应汇总文件图2,1 数据流图数据字典用数据字典来描述数据数据字典如下:数据项:表2.1 数据字典数据结构:概念结构设计概念结构设计的方法自顶向下,自底向上,逐渐扩张以及混合策略。
本系统设计概念结构通常有四类方法:根据自顶向即首先定义全局的概念结构的框架,然后逐步细化。
采用的是自底向上的方法。
下地进行需求分析然后再自底向上地进行概念设计。
概念结构设计的步骤第一步:抽象数据;E-R图;第二步:设计局部图,消除各种冲突;E-R图综合成总体E-R第三步:把各分图进行优化,消除冗余数据和冗余联系;第四步:对总体E-R抽象初步数据:(此处与优化后E-R图得出的实体联系属性很有可能不同)实体:图书、供应商、客户联系:图书订购关系、图书销售关系图书与供应商的关系是多对一的关系;图书与客户的关系是多对一的关系。
属性:图书的属性:图书编号、图书名称、出版社名称、作者名称、供应商名称;主码为图书编号供应商的属性:供应商名称、供应商地址、电话、联系人;主码为供应商名称客户的属性:客户编号、姓名、性别、年龄;主码为客户编号图书订购关系属性:供应商名称、图书编号、订购时间、订购单价;主码为供应商名称和图书编号图书销售关系属性:客户编号、图书编号、销售时间、销售单价;主码为客户编号和图书编号分E-R图:图书E-R图:图书编号图书名称出版社名称图书作者名称供应商名称供应商E-R图:供应商名称供应商地址供应商电话联系人E-R客户图:年龄初E-R图:供应商名客户编图书编销售时销售单客客户编性姓名优化后的总E-R图:逻辑设计阶段逻辑设计阶段:将系统E-R模型转换为关系模式,并对给出的关系模式进行关系规范化处理(尽量满足3NF),得到系统全部的关系模式,并标明主键、外键此部分一律采用英文命名。
然后进行用户外模式的设计,针对中国用户,此处用中文命名。
将E——R模式转换为以下关系模式:1) book(#bname, writer_name, press_name);主键:#bname2.) everybook (# bno, #bname) ;主键:#bno外键:#bname3) supplier (#supplier_name, address, telephone, contact) ;主键:#supplier_name4) customer (#cno, cname, sex, age);主键:#cno5) book_order(#bname, #supplier_name, #order_time, order_price, order_count);主键: #bname, #supplier_name, #order_time6) book_sell(#bno, #cno, sell_time, sell_price);主键:#bno发现这六个关系模式3N都满足。
因为元组中都是不可分割的数据,且所有非主属性完全依赖其主码,且它的任何一个非主属性都不传递于任何主关键字。
用户外模式设计:基本信息视图的建立:1. 单本销售情况(图书编号,图书名称客户编号,客户名称,销售单价,销售时间);2. 同种销售情况(书名,销售数量,销售金额);3. 客户信息(客户编号,客户名称、性别,年龄,累计购书金额);4. 供应商信息(供应商名称,地址,电话,联系人);5. 图书订购信息(图书名称,供应商名称,订购时间,订购数量,订购单价,订购金额,出版社名称,作者名称);物理设计阶段物理设计阶段:为一个逻辑数据模型选取一个最适合应用环境的物理结构(存储结构与存取方法),数据库的物理设计通常分为两步:A、确定数据库的物理结构;B、对物理结构进行时间和空间效率评价。
建立小型书店管理系统创建数据库 book_shop_management--创建小型书店管理系统create database book_shop_managementon primary(name='book_shop_management',filename='d:\program files\microsoft sql server\mssql.1\mssql\data\book_shop_management.mdf',size=10mb,maxsize=unlimited,filegrowth=10%)log on(name='book_shop_management_log',filename='d:\program files\microsoft sqlserver\mssql.1\mssql\data\book_shop_management_log.ldf',size=1mb,maxsize=5mb,filegrowth=3%)go截图得:对各个基本表的建立(包括了各种完整性约束)建立表 book--建立表bookcreate table book(#bname varchar(30)primary key,writer_name char(8),press_name char(12))建立表 everybook--建立表everybookcreate table everybook(#bno char(8)primary key,#bname varchar(30)not nullconstraint fk_everybook_bname foreign key references book(#bname))建立表 supplier--建立表suppliercreate table supplier(#supplier_name char(12)primary key,address varchar(50)not null,telephone char(7)not null,null))not contact char(8建立表 customer--建立表customercreate table customer(#cno char(8)primary key,cname char(8)not null,sex char(2),age int,)))女'','' ck_customer_sex check(sex in(男constraint建立表 book_order --建立表book_ordercreate table book_order(#bname varchar(30),#supplier_name char(12),#order_time datetime,order_count int not null,order_price int not null,)),#order_time#bname,#supplier_name keyconstraint pk_book_order primary(建立表book_sell--建立表book_sellcreate table book_sell(#bno char(8)primary key,#cno char(8)not null,sell_time datetime,sell_price int)建立视图建立基本信息视图:建立单本销售情况视图--建立单本销售情况视图create view view_单本销售情况asselect book_sell.#bno as图书编号,#bname as图书名称, book_sell.#cno as客户编号,cname as客户名称,sell_time as销售时间,sell_price as销售单价from book_sell,customer,everybookwhere everybook.#bno=book_sell.#bnoand customer.#cno=book_sell.#cno建立同种销售情况视图--建立同种销售情况视图create view view_同种销售情况asselect图书名称as书名,count(图书编号)as销售数量,sum(销售单价)as销售金额from view_单本销售情况图书名称by group建立客户信息视图--建立客户信息情况create view view_客户信息select customer.#cno as客户编号,cname as客户名称,sex as性别,age as年龄,(select sum(sell_price)from book_sellgroup by #cno)as累计购书金额from book_sell,customerwhere book_sell.#cno=customer.#cno建立供应商视图--建立供应商视图create view view_供应商信息asselect #supplier_name as供应商名称,address as地址,telephone as电话,contact as联系人supplier from建立订购信息视图--建立订购信息视图create view view_图书订购信息asselect book_order.#bname as图书名称,#supplier_name as供应商名称,#order_time as订购时间,order_price as订购单价,order_count as订购数量,(order_price*order_count)as订购金额,press_name as出版社名称,writer_name as作者名称from book,book_order#bnamebook_order. book.#bname=where建立存储过程某种图书库存查询存储过程create procedure sp_某种图书库存查询--@p1为要查询的图书名称@p1 varchar(30)asbeginselect订购数-销售数量as库存from(select sum(order_count)as订购数,#bname as书名from book_ordergroup by #bname)as x,view_同种销售情况where x.书名=@p1 and view_同种销售情况.书名=@p1endgo某段时间内的销售业绩查询存储过程----建立本月业绩查询存储过程-----由于不知其它信息,此处将销售金额与营业金额等同-----营业金额=营业额=成本+利润create procedure sp_查询某段时间内的业绩--@p1为起始时间,@p2为结束时间@p1 datetime,@p2 datetimeasbeginselect sum(销售单价)as销售金额from view_单本销售情况where销售时间>=@p1 and销售时间<=@p2endgo某段时间内的销售最好图书信息查询存储过程----建立某段时间内销售最好图书信息查询存储过程create procedure sp_查询某段时间内销售最好的图书信息@p1 datetime,@p2 datetimeasbeginselect #bname as图书名称,writer_name as作者名称,press_name as出版社名称from(select图书名称as书名,count(图书编号)as销售数量from view_单本销售情况where销售时间>=@p1and销售时间<=@p2group by图书名称)as x,bookwhere #bname=书名and销售数量>=all(select count(图书编号)from view_单本销售情况where销售时间>=@p1and销售时间<=@p2group by图书名称)endgo建立触发器(另外5个表也建立相应曾删改触发器,不过此处从略,详情见附件源代码)建立一个customer的操作审核表,并建立相关触发器,当向customer中插入、更新或删除记录时,生成一条操作记录插入到该操作审核表中,内容包括客户编号、客户名称、操作方式(插入/更新/删除)和操作时间----建一个操作审核表create table customer_operate(客户编号char(8)not null,客户名称char(8)not null,操作方式char(4)not null,操作时间datetime not null)----建立相关触发器create trigger trigger_customer_inserton customerfor insertasbegindeclare @p1 char(8),@p2 char(8)set @p1=(select #cno from inserted)set @p2=(select cname from inserted)print'insert:'select*from insertedinsert into customer_operate values(@p1,@p2,'插入',getdate())endgocreate trigger trigger_customer_deleteon customerfor deleteasbegindeclare @p1 char(8),@p2 char(8)set @p1=(select #cno from deleted)set @p2=(select cname from deleted)print'deleted:'select*from deletedinsert into customer_operate values(@p1,@p2,'删除',getdate())endgocreate trigger trigger_customer_updateon customerfor updateasbegindeclare @p1 char(8),@p2 char(8)set @p1=(select #cno from deleted)set @p2=(select cname from deleted)print'inserted:'select*from insertedprint'deleted:'select*from deletedinsert into customer_operate values(@p1,@p2,'修改',getdate())endgo建立索引(由于数据库比较小,没有必要建立索引)实现数据库(有附件源代码和该数据库源文件)过程功能验证向基本表插入适量如下数据并显示基本表信息everybook book#bname#bno#bname Writer_name Press_name何以笙箫默00000001顾漫晋江出版社何以笙箫默何以笙箫默00000002起点出版社辛夷坞原来你还在这里00000003原来你还在这里烈火如歌晋江出版社明晓溪烈火如歌00000004阅读出版社微微一笑很倾城顾漫烈火如歌0000000500000006烈火如歌00000007微微一笑很倾城book_sell#cno Sell_time#bno Sell_price000000012013-6-16000000012100000002000000032013-6-25190000000200000007202013-7-900000003000000042013-7-923 00000004000000052013-7-1918customercnamesex#cno Age女0000000118吕鹏00000002女孙鲁鲁18女王肖雨0000000319邵丽君00000004女19Book_orderOrder_time#supplier_name#bnameOrder_countOrder_price大旗212何以笙箫默2013-6-1010大旗2013-6-20原来你还在这里1102013-7-2红方1烈火如歌2013-7-3烈火如歌长城291112013-7-3高原微微一笑很倾城Suppilier contact telephone#suppiler address上海王平大旗1573234上海李景红方1734272 1564323长城张艳丽江苏殷风高原郑州1242356在注:此处插入数据应当bookeverybook 之前插入数据(外键)截图得:视图显示基本信息---用显示视图基本信息select*from view_单本销售情况select*from view_供应商信息select*from view_客户信息select*from view_同种销售信息图书订购信息 view_from*select截图得:执行存储过程完成目标查询某种图书库存查询'某种图书库存查询sp_'烈火如歌exec本月业绩查询'2013-7-31', sp_exec查询某段时间内的业绩'2013-7-1'本月销售最好图书信息查询,查询某段时间内销售最好的图书信息execsp_'2013-7-1''2013-7-31'截图得:用普通查询完成目标查询(两次查询同时显示)订购超3次客户信息查询---订购超次客户信息查询select*from view_客户信息where客户编号=any(select #cno from book_sellgroup by #cno)(*)>3having count按供应商名称查询订购信息---按供应商名称查询订购信息select*from view_图书订购信息order by供应商名称截图得:注:数据检查得,确实没有订购超3次的客户。