数据库设计与应用课件整本书电子教案全套教学教程课件.pptx
《数据库设计与应用课件整本书电子教案全套教学教程课件.pptx》由会员分享,可在线阅读,更多相关《数据库设计与应用课件整本书电子教案全套教学教程课件.pptx(651页珍藏版)》请在咨信网上搜索。
数据库设计与应用n计算机的应用领域 u科学计算、数据处理、计算机通讯、办公领域、大数据等等n共同特点u数据处理所占比例越来越大u已经进入“DT时代”、“AI时代”n安全有效存储、管理、检索数据极其重要n数据库管理系统(DBMS)引言n全面系统地了解数据库的基础概念n能使用SQL语言进行基本数据操作n掌握SQL Server 2008数据库管理系统n具有设计、使用和维护一个一般数据库系统的基本能力学习目标n第一部分:基本技能(共6章)u第01-06章:创建和管理数据库、创建和管理数据表、用T-SQL语句操作数据、简单查询、模糊查询、聚合函数、分组查询和多表联合查询n第二部分:提升技能(共6章)u第08-13章:T-SQL创建数据库和表、T-SQL编程、子查询、事务视图与索引、存储过程、数据库设计与优化n第三部分:项目技能(共2章)u第07章:阶段项目QQ数据库设计u第14章:课程项目银行ATM系统数据库设计与实现学习内容n名称:数据库设计与应用n主编:张成叔n出版社:中国铁道出版社n出版日期:2020年8月n购买途径:网购(京东自营)指定参考用书n教学要求(笔记、作业、实训)u实训是迭代的,要求每次要独立完整完成n平时成绩评定(出勤、提问、实训、作业)n关于过程化考核 n关于课程考核课程学习建议 一起努力 共同提高第 1 章 创建和管理数据库目 录2 2认识数据库系统认识SQL Server 2008登录SQL Server数据库创建和管理SchoolDB数据库1 13 34 4n 数据库u数据库(Database,简称DB)u是一个长期存储在计算机内,相互联系的数据集合u数据库中的数据按照一定的数据模型组织、描述和存储u具有较少冗余和较高的数据独立性u允许多个用户共享使用u提供数据的安全性维护和完整性检查措施数据库基本概念n 数据库管理系统u数据库管理系统(DataBase Management System,简称DBMS)u位于用户与操作系统之间的一层数据管理软件u是为了建立、使用和维护数据库而配置的系统软件u例如:Access,Microsoft SQL Server,Oracle等数据库基本概念n 数据库系统u数据库系统(DataBase System,简称DBS)u指在计算机系统中引入数据库后的系统u一般由数据库、数据库管理系统(及其开发工具)、应用系统、数据库管理员(DataBase Administrator,简称DBA)和用户构成u数据库系统的表示数据库基本概念用户用户用户用户用户用户应用系统应用系统应用开发工具应用开发工具数据库管理系统数据库管理系统操作系统操作系统数据库管理员数据库管理员数据库数据库软件开发人员软件开发人员数据库基本概念n应用程序u作用:响应操作并显示结果、向数据库请求数据u要求:美观、操作简单方便n数据库u作用:存储数据、检索数据、生成新的数据u要求:统一、安全、性能等数据库和应用程序 响应和提供数据响应和提供数据操作和查询操作和查询数数 据据 库库nOracleuOracle公司的产品u产品免费、服务收费nSQL Serveru针对不同用户群体的多个版本u易用性好nMySQLu开放源代码u网站应用广泛时下主流的数据库一起努力 共同提高目 录1 12 23 34 4认识数据库系统认识SQL Server 2008登录SQL Server数据库创建和管理SchoolDB数据库n SQL Server 2008企业版n SQL Server 2008标准版n SQL Server 2008工作组版n SQL Server 2008 Web版n SQL Server 2008开发者版n SQL Server 2008 Express版nSQL Server Compact 3.5版SQL Server 2008的版本n硬件需求u 内存4G及以上n软件需求u支持 Windows 系列,最好是Win 7、Win10SQL Serve 2008的安装n 主数据文件u每个数据库都有一个主数据文件u数据库的起点,指向数据库中的其他文件u推荐文件扩展名是.MDF 数据库文件n次要数据文件u 除主数据文件以外的所有其他数据文件都是次要数据文件u某些数据库可能不含任何次要数据文件u推荐文件扩展名是.NDF 数据库文件n日志文件u包含用于恢复数据库的所有日志信息u每个数据库必须至少有一个日志文件,也可以有多个u推荐文件扩展名是.LDF 数据库文件n文件组u文件组是文件集合,用于帮助数据布局和管理任务n主文件组u包含主数据文件和任何没有明确分配给其他文件组的其他文件u系统表都分配在主文件组中n用户定义文件组u在CREATE DATABASE语句中使用 FILEGROUP关键字指定的任何文件组数据库文件nSQL Server 2008中默认有5个系统数据库nmaster数据库umaster数据库记录SQL Server系统的所有系统级信息u包括:实例范围的元数据(例如登录帐户)、端点、链接服务器和系统配置设置umaster 数据库还记录了所有其他数据库的存在、数据库文件的位置以及 SQL Server 的初始化信息系统数据库n model数据库u用作SQL Server实例上创建的所有数据库的模板u对model数据库进行的修改(如数据库大小、排序规则、恢复模式和其他数据库选项)将应用于以后创建的所有数据库 n msdb数据库umsdb 数据库由SQL Server代理用于计划警报和作业u其他功能(如Service Broker和数据库邮件)使用系统数据库nresource数据库uResource数据库为只读数据库u包含:SQL Server中的所有系统对象u不包含:用户数据或用户元数据ntempdb数据库utempdb数据库是一个临时数据库u用于保存临时对象或中间结果集系统数据库n数据库文件的一般默认路径为C:Program FilesMicrosoft SQL ServerMSSQL.1MSSQLData系统数据库不同实例的文件夹不同实例的文件夹MSSQL.1为默认实例的文件夹为默认实例的文件夹一起努力 共同提高目 录1 13 32 24 4认识数据库系统认识SQL Server 2008登录SQL Server数据库创建和管理SchoolDB数据库n 建立数据库连接uSQL Server Management Studio 可以连接多个SQL Server服务器n建立一个新数据库连接的操作步骤 u在SSMS的菜单栏中选择“文件”“连接对象资源管理器”选项u弹出“连接到服务器”对话框登录SQL Server数据库n训练要点u安装SQL Server2008数据库u成功连接到数据库服务器n需求说明u安装配置好SQL Server2008,在安装过程中遇到问题请从网络搜索解决办法u在连接之前确保SQL Server服务器已经启动实训1连接到数据库服务器操作演示:登录数据库服务器操作演示:登录数据库服务器n登录名u用以登录SQL Server数据库服务器n数据库用户u用以登录成功后,访问某个具体的用户数据库登录名和数据库用户建立登录名操作演示:建立登录名操作演示:建立登录名经验经验经验经验新建登录名并把新建登录名并把“sa”账户禁用或删除以保障数据库安全账户禁用或删除以保障数据库安全建立数据库用户操作演示:建立登录名操作演示:建立登录名一起努力 共同提高目 录1 14 43 32 2认识数据库系统认识SQL Server 2008登录SQL Server数据库创建和管理SchoolDB数据库创建数据库 操作演示:创建数据库操作演示:创建数据库schoolDBn训练要点u创建数据库u设置数据库各个参数n需求说明u数据库名称:SchoolDBu物理文件:D:SchoolDBu数据文件:初始大小为10MB,允许自动增长,数据文件大小不受限制u日志文件:初始大小为1MB,最大为20MBu其他选项:自动收缩,并且不创建统计信息实训2创建数据库SchoolDBn实现思路及关键步骤u登录和连接到SQL Server Management Studiou创建数据库SchoolDBu设置各项参数配置u在物理地址保存数据库文件实训2创建数据库SchoolDBn移动数据库的步骤u分离数据库u附加数据库 分离和附加数据库操作演示:分离和附加数据库操作演示:分离和附加数据库n需求说明u使用工具分离数据库SchoolDBu将物理文件剪切到其他物理位置u附加数据库SchoolDB实训3分离和附加数据库n备份数据库的重要性n四种数据库备份方式备份和还原数据库 操作演示:备份和还原数据库操作演示:备份和还原数据库删除数据库 操作演示:删除数据库操作演示:删除数据库n需求说明:u删除SchoolDB数据库n关键点分析u在删除数据库之前,请先分离或备份好该数据库,以免数据库丢失u在删除数据库时注意关闭该数据库u在新建查询中,如果用到此数据库也应关闭新建查询实训4删除SchoolDB数据库 总结用数据库管理数据,检索更加安全和高效关系数据库的基本概念一个数据库至少包含一个数据库文件和一个事务日志文件数据库中允许有一些数据冗余,但要保持数据的完整性SSMS的基本操作常用的数据库操作分离和附加数据库备份和还原数据库收缩数据库关系数据库管理系统列:有相应的数据类型、长度和存储的数值行:包含一个唯一的数据实体一行可以包含有一个或多个列建立登录名数据库用户创建数据库一起努力 共同提高数据库设计与应用第 2 章 创建和管理数据库 数据完整性1 12 2 创建数据表 完善数据表结构3 3目 录4 4 建立数据表直接关系 删除数据表5 5n实体和记录u实体是所有客观存在、可以被描述的事物u数据库中用数据表来存储这种相同类型和格式的实体u每一行对应一个实体,通常也叫做一条记录数据完整性 王子洋 张琪 项宇 胡保密 王超 n数据存放在表中n数据完整性的问题大多是由于设计引起的n创建表的时候,就应当保证以后数据输入是正确的n错误的数据、不符合要求的数据不允许输入数据完整性可靠性可靠性准确性准确性数据数据完整性完整性创建表:保证数据的完整性=实施完整性约束!n输入的类型是否正确?u年龄必须是数字n输入的格式是否正确?u身份证号码必须是18位n是否在允许的范围内?u性别只能是“男”或者“女”n是否存在重复输入?u学生信息输入了两次n是否符合其他特定要求?u学生的出生日期必须小于入学日期完整性内容举例列值要求(约束)列值要求(约束)整行要求(约束)整行要求(约束)问题问题问题问题域完整性域完整性实体完整性实体完整性引用完整性引用完整性自定义完整性自定义完整性nSQL Server数据库提供四种类型的约束保证完整性四大完整性约束实体完整性安徽省利辛县安徽省利辛县胡保蜜胡保蜜G1363278学号学号姓名姓名地址地址.G1263201王子洋王子洋安徽省蚌埠市安徽省蚌埠市G1263382张琪张琪安徽省合肥市安徽省合肥市G1263458项宇项宇安徽省合肥市安徽省合肥市G1363278胡保蜜胡保蜜安徽省利辛县安徽省利辛县G1363300王超王超安徽省涡阳县安徽省涡阳县约束方法:唯一约束、主键约束、标识列!n实体完整性含义u要求表中的每条记录反映不同的实体,不能存在相同的记录u相同的记录:每一个字段值都相同n实现的途径u设置主键、唯一键等n要求u必须为每张表设置主键实体完整性域完整性安徽省寿县安徽省寿县胡仲友胡仲友G1363302 中中学号学号姓名姓名地址地址性别性别G1263201王子洋王子洋安徽省蚌埠市安徽省蚌埠市男男G1263382张琪张琪安徽省合肥市安徽省合肥市女女G1263458项宇项宇安徽省合肥市安徽省合肥市男男G1363278胡保蜜胡保蜜安徽省利辛县安徽省利辛县男男G1363300王超王超安徽省涡阳县安徽省涡阳县男男约束方法:限制数据类型、检查约束、外键约束、默认值、非空约束!性别只能是性别只能是“男男”或者或者“女女”n域完整性的含义u表中字段输入值的有效性u设置字段的类型、取值范围等u实现:建立表结构添加检查约束添加默认约束添加非空约束域完整性98G00100212引用完整性学号学号姓名姓名地址地址.G1263201王子洋王子洋安徽省蚌埠市安徽省蚌埠市G1263382张琪张琪安徽省合肥市安徽省合肥市G1263458项宇项宇安徽省合肥市安徽省合肥市G1363278胡保蜜胡保蜜安徽省利辛县安徽省利辛县G1363300王超王超安徽省涡阳县安徽省涡阳县课号学号分数1G1263201881G1263382743G1263458673G1363278814G136330098约束方法:外键约束!n也称为:参照完整性n含义:u在输入或删除记录时,保证两张表中相关联字段的值的一致性u实现:外键约束n主表和子表u在子表中插入时要引用主表u在主表中删除时要先删除子表中被用于的数据引用完整性自定义完整性触发器:检查信用值用户编号用户编号用户姓名用户姓名会员证会员证.AV0012孙悟空孙悟空AV378289AV0013猪悟能猪悟能AV378290AV0014沙悟净沙悟净AV378291CV0015虚竹虚竹AV372133CV0016乔峰乔峰AV121322帐号帐号姓名姓名信用信用.00192孙悟空孙悟空700288猪悟能猪悟能612333沙悟净沙悟净890111虚竹虚竹4093000岳不群岳不群-10约束方法:规则、存储过程、触发器!n主键(Primary Key)u主键约束实现数据的实体完整性u主键的字段值唯一、不允许重复不能为空u一张表只能定义一个主键u主键可以是单一字段,也可以是多个字段的组合u例如:在学生表中,可以设置“学号”为主键主键和外键n外键u外键约束可以使一个数据库的多张表之间建立关联u外键约束可以保证数据的参照完整性u例如在成绩表的学号字段上建立外键约束,关联到学生表的学号字段学生表称为“主表”,成绩表称为“从表”u一个表可以有多个外键u设置了外键约束后,外键的值只能取主表中主键的值或空值,从而保证了参照完整性主键和外键一起努力 共同提高 数据完整性1 1 创建数据表 完善数据表结构3 3目 录4 4 建立数据表直接关系 删除数据表5 52 2n在SQL Server数据库中,每个字段(列)、局部变量和参数都要设置数据类型,用来限定该对象所存储的数据的类型n常见的数据类型有:int,char,varchar,date等n在设计数据表时,必须指定合适的数据类型列的数据类型列的数据类型分分 类类数据类型数据类型说说 明明二进制数据类型二进制数据类型存储非字符和文本的数存储非字符和文本的数据据image可用来存储图像可用来存储图像文本数据类型文本数据类型字符数据包括任意字母、字符数据包括任意字母、符号或数字字符的组合符号或数字字符的组合char固定长度的非固定长度的非 Unicode 字符数据字符数据varchar可变长度非可变长度非 Unicode 数据数据nchar固定长度的固定长度的 Unicode 数据数据nvarchar可变长度可变长度 Unicode 数据数据text存储长文本信息存储长文本信息ntext存储可变长度的长文本存储可变长度的长文本日期和时间日期和时间日期和时间日期和时间datetime 数字数据数字数据该数据仅包含数字,包该数据仅包含数字,包括整数和浮点数括整数和浮点数int、smallint整数整数float、real浮点数浮点数货币数据类型货币数据类型十进制货币值十进制货币值moneybit数据类型数据类型表示是表示是/否的数据否的数据bit存储布尔数据类型存储布尔数据类型n电话号码一般使用什么数据类型存储?n性别一般使用什么数据类型存储?n年龄信息一般使用什么数据类型存储?n照片信息一般使用什么数据类型存储?n薪水一般使用什么数据类型存储?列的数据类型提问提问提问提问n步骤u右击指定数据库下的“表”选项,选择“新建表u在窗口中完成表结构设计新建数据表操作演示:新建数据表操作演示:新建数据表n训练要点:u表中各列的名称、数据类型u保存数据库表n需求说明:u创建学生信息表Student,如下表所示实训创建数据库中的数据表列列 名名数据类型数据类型是否允许为空是否允许为空默认值默认值描描 述述StudentNonvarchar(50)学号,主键StudentNamenvarchar(50)姓名Sexchar(2)性别BornDatedatetime是出生日期GradeIdint所在学期Phonenvarchar(50)联系电话Addressnvarchar(255)是安徽省合肥市家庭地址Emailnvarchar(50)是电子邮件IdentityCardvarchar(18)是身份证号n创建学期表Graden创建课程表Subject n创建成绩表Result实训创建数据库中的数据表列列 名名数据类型数据类型是否允许为空是否允许为空默认值默认值描描 述述Id Int标识列,自增1,主键StudentNonvarchar(50)学号SubjectIdint所考课程编号StudentResultint是分数ExamDatedatetime考试日期列列 名名数据类型数据类型是否允许为空是否允许为空默认值默认值描描 述述GradeIdint学期编号,主键GradeNamenvarchar(50)学期名称列列 名名数据类型数据类型是否允许为空是否允许为空默认值默认值描描 述述SubjectIdint课程编号,主键SubjectNamenvarchar(20)课程名称ClassHourint学时GradeIdint所属学期n关键点分析u在上一章已将建好的SchoolDB数据库中创建数据表u列的名称、类型必正确,否则后续章节的技能训练无法正常进行u用正确的名称保存各数据表实训创建数据库中的数据表一起努力 共同提高 数据完整性3 32 2 创建数据表 完善数据表结构1 1目 录4 4 建立数据表直接关系 删除数据表5 5n允许Null值u在输入数据值时,某个字段的值可以不输入u每个字段默认为“允许Null值”u 将不允许空值的列名后的“允许Null值”复选框取消选中n实际应用u主键要设置为不允许空值u根据需求设置设置“允许Null值”n设置步骤u打开表“设计视图”u 将不允许空值的列名后的“允许NULL值”复选框取消设置“允许Null值”操作演示:设置允许为空操作演示:设置允许为空n训练要点u对表结构进一步优化u设置允许为空的字段n需求说明u根据技能训练1中表的描述,设置字段是否允许为空n补充说明u数据库中的列若允许为空,则在输入数据行的时候,该项可以不输入u重要的、不可或缺的信息,就不应当允许为空n测试u为表添加数据,测试“允许为空”和“不允许为空”的区别实训设计允许为空的字段n学生姓名允许为空吗?n家庭地址允许为空吗?n电子邮件信息允许为空吗?n考试成绩允许为空吗?思考“允许Null值”提问提问提问提问n主键的价值:确保实体完整性n建立步骤u右击需要建立主键的列名,在弹出的快捷菜单中选择“设置主键”建立主键操作演示:建立主键操作演示:建立主键“金金钥匙匙”n训练要点u建立主键n需求说明u根据技能训练1中表的描述,为SchoolDB数据库中的数据表建立主键n关键点分析u表中的主键也可以是由多个列组合的复合主键u按住Ctrl建选择设置为主键的多列u右击,设置主键n测试u为表添加数据,测试主键是否设置成功实训为表建立主键n在主键列输入的数值,允许为空吗?n一个表的主键可以有多个列组成吗?思考设置主键n最少性u尽量选择单个键作为主键n稳定性u尽量选择数值更新少的列作为主键选择主键的原则提问提问提问提问n默认值使用场合u某些字段数据经常为固定值,或出现的频率较多u为这些字段的值事先设置为默认值n设置步骤u打开表设计视图u单击选择设置默认值的字段u“列属性”“常规”“默认值或绑定”u设置“默认值”默认值操作演示:默认值操作演示:默认值n训练要点u设置Student表的默认值n需求说明u根据实训1中表的描述,将Student表中字段Address设置默认值n补充说明u建立默认值后,当用户没有在该列中输入值,则将定义的值赋给该列n测试u为表添加数据,测试默认值设置是否正确实训设计表的默认值一起努力 共同提高!n检查约束u也称为CHECK约束u用于定义字段可以接受的数据值或格式n例如u年龄不能小于零u性别只能为“男”或“女”u邮箱中必须包含“”建立检查约束n设置步骤u在表的设计视图中右击u从弹出的快捷菜单中选择“CHECK约束”选项,在对话框中设置 建立检查约束操作演示:建立检查约束操作演示:建立检查约束n建立了检查约束后u向该列输入、插入或者更新时,约束将起作用u如果输入的值与建立的约束不符,将出现错误报告提示建立检查约束操作演示:检查约束的作用操作演示:检查约束的作用超出范超出范围n训练要点u为数据库中的数据表添加检查约束n需求说明u根据实际业务需求,为SchoolDB中的表分别添加检查约束列列 名名数据类型数据类型是否允许为空是否允许为空默认值默认值描描 述述Sexchar(2)性别,只能填写“男”或“女”Emailnvarchar(50)是电子邮件,必须包含“”字符列列 名名数据类型数据类型是否允许为空是否允许为空默认值默认值描描 述述ClassHourint学时,必须大于零列列 名名数据类型数据类型是否允许为空是否允许为空默认值默认值描描 述述StudentResultint是分数,必须在0100之间学生信息表学生信息表StudentStudent的结构的结构课程表课程表SubjectSubject的结构的结构成绩表成绩表ResultResult的结构的结构实训添加检查约束n补充说明u建立了检查约束前,必须保证数据表中已经存在的数据能满足约束要求u如果已有数据不满足约束要求,必须先删除已有数据n测试u为表添加数据,测试检查约束的设置是否成功u添加数据前,先关闭表设计视图 实训添加检查约束n表中没有合适的列作为主键怎么办?设置标识列提示提示提示提示在现有列中无法设置主键时:增设标识列!n标识列本身没有具体的意义,只是用来区分不同的记录n标识列通常被定义为主键n设置步骤u修改表结构,增加列u设置该列数据类型为intu单击选中该列u在“列属性”中设置 标识列操作演示:设置标志列操作演示:设置标志列n训练要点u为数据库中的数据表添加标识列n需求说明u据实际的业务需求,为SchoolDB中的表分别添加标识列成绩表成绩表ResultResult的结构的结构列列 名名数据类型数据类型是否允许为空是否允许为空默认值默认值描描 述述Id Id intint标识列,自增标识列,自增1实训添加标识列n标识列允许为字符数据类型吗?n标志列中的数据可以手工输入或者指定吗?n可以修改标志列中的数据吗?n如果标识列A的初始值为1,增长量为2,则输入三行数据以后,再删除两行,下次再输入数据行的时候,标识值从多少开始?思考标识列提问提问提问提问一起努力 共同提高 数据完整性4 42 2 创建数据表 完善数据表结构3 3目 录1 1 建立数据表直接关系 删除数据表5 5n表间关系u成绩表中的学生学号应该引用学生表的学号u不能存在学生表没有的学生,在成绩表中有该学生的成绩n表间关系的实现u设置外键约束u成绩表(Result)中的列StudentNo引用了学生表(Student)中的StudentNou学生表是主表,成绩表是从表建立数据表间关系n设置外键约束u确定表与表之间的主外键关系u打开从表设计视图u右击字段选择“关系”建立数据表间关系建立数据表间关系操作演示:建立外键操作演示:建立外键n训练要点u表的主外键对应u表间关系的建立n需求说明u四张表,建立它们之间的数据引用关系,如下表所示 实训为数据库建立表间关系 SchoolDBSchoolDB数据库表之间的主外键关系数据库表之间的主外键关系序号序号外键表名外键表名外键字段名外键字段名主键表名主键表名主键字段名主键字段名1SubjectSubjectGradeIdGradeIdGradeGradeGradeIdGradeId2StudentStudentGradeIdGradeIdGradeGradeGradeIdGradeId3ResultResultStudentNoStudentNoStudentStudentStudentNoStudentNo4ResultResultSubjectIdSubjectIdSubjectSubjectSubjectIdSubjectIdn关键点分析u“主键表”和“外键表”不能弄反u主键表选择的列必须只主键n测试u表间关系建立后,要通过数据的输入来验证建立的正确行u所有关系也需要逐一验证,否则会留下隐患实训为数据库建立表间关系n当主表中没有对应的记录时,不能将记录添加到子表u成绩表中不能出现在学生信息表中不存在的学号n不能更改主表中的值而导致子表中的记录孤立u把学生信息表中的学号改变了,学生成绩表中的学号也应当随之改变n子表存在与主表对应的记录,不能从主表中删除该行u不能把有成绩的学生删除了n删除主表前,先删子表u先删学生成绩表、后删除学生信息表主外键建立后注意事项建立数据库关系图操作演示:建立关系图操作演示:建立关系图n关系图的价值u以图的形式展示表与表之间的关系u更加方便查看表间的关系n设置步骤u展开该数据库u右击“数据库关系图”u选择“新建数据库关系图”建立数据库关系图n训练要点u创建数据库关系图n需求说明u对SchoolDB数据库已经建立的四张表及表间关系实训8-建立数据库关系图 SchoolDBSchoolDB数据库表之间的主外键关系数据库表之间的主外键关系序号序号外键表名外键表名外键字段名外键字段名主键表名主键表名主键字段名主键字段名1SubjectSubjectGradeIdGradeIdGradeGradeGradeIdGradeId2StudentStudentGradeIdGradeIdGradeGradeGradeIdGradeId3ResultResultStudentNoStudentNoStudentStudentStudentNoStudentNo4ResultResultSubjectIdSubjectIdSubjectSubjectSubjectIdSubjectId 数据完整性5 52 2 创建数据表 完善数据表结构3 3目 录4 4 建立数据表直接关系 删除数据表1 1n对于不再使用的数据表,可以在数据库中将该表删除n对于建立了主外键关系的表,若要删除主表,则首先要删除从表n删除步骤u在被删除表上右击u选择“删除”删除数据表操作演示:删除数据表操作演示:删除数据表 总结在创建数据表的过程中设置列的属性并实施数据完整性SQL Server提供四种约束创建数据库表需要设置表的列名、数据类型、是否允许为空、主键、必要的默认值、标识列和检查约束主外键关系建立后在操作数据时的注意事项实体完整性约束域完整性约束引用完整性约束自定义完整性约束数据库中创建表当主表中没有对应的记录时,不能将记录添加到子表不能更改主表中的值而导致子表中的记录孤立子表存在与主表对应的记录,不能从主表中删除该行删除主表前,先删子表一起努力 共同提高数据库设计与应用第 3 章 用T-SQL语句操作数据第1章 创建和管理数据库认识T-SQL2 2插入、更新及删除数据数据的导入和导出1 13 3目 录n SQL是什么?uStructured Query Language:结构化查询语言n为何要使用SQL?u难道仅仅使用SQL Server Management Studio操作数据库?u应用程序如何与数据库打交道?n何时使用?u对SQL Server执行所有的操作都可以u程序中的增删改查SQL简介nT-SQL:Transact-SQLnT-SQL是SQL的增强版,对功能进行了扩充:如变量说明、流程控制、功能函数SQL和T-SQLnDML(数据操作语言)u插入、删除和修改数据库中的数据nDCL(数据控制语言)u用来控制存取许可、存取权限等nDQL(数据查询语言)u用来查询数据库中的数据nDDL(数据定义语言)u用来建立数据库、数据库对象和定义表的列SQL的组成n运算符u用来进行列间或者变量之间的比较和数学运算u包括算术运算符、赋值运算符、比较运算符、逻辑运算符 SQL中的运算符算术运算符 运算符运算符说 明明+加运算,求两个数或表达式相加的和,如加运算,求两个数或表达式相加的和,如6+8-减运算,求两个数或表达式相减的差减运算,求两个数或表达式相减的差*乘运算,求两个数或表达式相乘的积乘运算,求两个数或表达式相乘的积/除运算,求两个数或表达式相除的商,如除运算,求两个数或表达式相除的商,如5/3的值为的值为1%取模运算,求两个数或表达式相除的余数,如:取模运算,求两个数或表达式相除的余数,如:5%3的值为的值为2 SQL中的运算符赋值运算符赋值运算符逻辑运算符逻辑运算符运算符运算符说说 明明=把一个数或变量或表达式赋值给另一变量,把一个数或变量或表达式赋值给另一变量,如:如:Name=王华王华 运算符运算符说说 明明AND当且仅当两个布尔表达式都为当且仅当两个布尔表达式都为true时,返回时,返回TRUE。OR当且仅当两个布尔表达式都为当且仅当两个布尔表达式都为false,返回,返回FALSE。NOT布尔表达式的值取反布尔表达式的值取反 SQL中的运算符比较运算符比较运算符运算符运算符说说 明明=等于,例如:等于,例如:age=23 大于,例如:大于,例如:price100 小于小于 不等于不等于=大于等于大于等于=小于等于小于等于!=不等于(不等于(非非SQL-92标准标准)一起努力 共同提高第1章 创建和管理数据库认识T-SQL1 1插入、更新及删除数据数据的导入和导出2 23 3目 录n向学生表中插入一行数据插入数据行语法INSERT INTO Student(StudentNo,Address,StudentName,Sex,GradeId,Email,Phone)VALUES(G1563399,上海松江上海松江,艾边成艾边成,男男,1,ABC,18356508309)演示示例演示示例1:插入一条学生记录:插入一条学生记录语法语法语法语法示例示例示例示例INSERT INTO 表名 (列名)VALUES (值列表)注意事项注意事项1:值的顺序和类型要与列名的顺序和类型一致值的顺序和类型要与列名的顺序和类型一致插入数据行注意事项注意事项注意事项2:对于字符类型、日期类型的列,当插入数据的时候,其值用单引号对于字符类型、日期类型的列,当插入数据的时候,其值用单引号()引起来引起来注意事项注意事项3:INSERT语句不能为标识列指定值语句不能为标识列指定值INSERT Subject(SubjectName,ClassHour,GradeId)VALUES(图形图像处图形图像处理理,64,1)注意事项注意事项4:如果在设计表的时候就指定了某列不允许为空,则必须插入数据如果在设计表的时候就指定了某列不允许为空,则必须插入数据INSERT INTO Student(StudentNo,StudentName,GradeId,Phone)VALUES(G1564000,空空空空,1,15100001234)插入数据行注意事项注意事项注意事项5:具有缺省值的列,具有缺省值的列,可以使用可以使用DEFAULT(缺省)关键字来代替插入的数值(缺省)关键字来代替插入的数值INSERT INTO Student(StudentNo,Address,StudentName,Sex,GradeId,Email,Phone)VALUES(G1563399,DEFAULT,艾边成艾边成,男男,1,ABC,18356508309)插入数据行注意事项n训练要点:u使用INSERT语句向数据库表插入数据 n需求说明:u向学期表Grade插入如下表所示的6条数据。实训向数据表插入数据学期表学期表GradeGrade中的测试数据中的测试数据GradeIdGradeName1S12S23S34S45S56S6u向Student表中插入前3条数据,如下表。实训向数据表插入数据学生信息表测试数据学生信息表测试数据StudentNoStudentNoStudentNameStudentNameSexSexGradeIdGradeIdPhonePhoneAddressAddressBornDateBornDateEmailEmailIdentityCardIdentityCardG1263201王子洋男518655292456安徽省蚌埠市1993/8/340423199308071235G1263382张琪女515678095126合肥长江路1993/5/340104199305073512G1263458项宇男5182980095421992/12/340881199212102451一起努力 共同提高n通过INSERT SELECT语句将现有表中的数据添加到已存在的表中插入多行数据INSERT INTO AddressList(姓名姓名,地址地址,电子邮件电子邮件)SELECT StudentName,Address,EmailFROM StudentINSERT INTO(列名)SELECT FROM 演示示例演示示例2:插入多条学生记录:插入多条学生记录示例示例示例示例语法语法语法语法注意注意注意注意AddressList表必须预先创建,并具有姓名表必须预先创建,并具有姓名,地址和电子邮件三列地址和电子邮件三列n通过SELECT INTO语句将现有表中的数据添加到新表中插入多行数据SELECT Student.StudentName,Student.Address,Student.EmailINTO AddressList2FROM StudentSELECT(列名)INTO FROM 语法语法语法语法 示例示例示例示例注意注意注意注意该语句只能执行一次该语句只能执行一次演示示例演示示例2:插入多条学生记录:插入多条学生记录n需求说明:u根据学生信息表Student,使用INSERT SELECT语句创建通讯录表Address_ISu根据学生信息表Student,使用SELECT INTO语句创建通讯录表Address_SIu保存T-SQL为“创建通讯录.sql实训创建学生通讯录一起努力 共同提高使用UPDATE更新数据行UPDATE 表名 SET 列名=更新值 WHERE 更新条件UPDATE Student SET Sex=男男UPDATE SubjectSET ClassHour=55 WHERE SubjectName=大学英语大学英语 语法语法语法语法 示例示例示例示例使用UPDATE更新数据行演示示例演示示例3:修改记录:修改记录注意注意注意注意1 1、更新多列数据使用逗号隔开、更新多列数据使用逗号隔开2 2、勿忘条件限制,以防有效数据的丢失、勿忘条件限制,以防有效数据的丢失n训练要点:u使用UPDATE语句修改数据库表中的数据 n需求说明:u修改学号为G1363300的学生地址为“山东省济南市文化路2号院”。u修改学号为G1363301的学生的所属学期为2。u修改“大学英语”课时的学时数为55。u将电子邮件为空的学生电子邮件统一修改为“未知”。实训更新数据表中数据一起努力 共同提高使用DELETE删除数据行DELETE FROM StudentWHERE StudentName=项宇项宇语法语法语法语法示例示例示例示例演示示例演示示例4:删除学生记录:删除学生记录DELETE FROM 表名 WHERE 使用DELETE删除数据行演示示例演示示例4:删除学生记录:删除学生记录注意注意注意注意若删除行的主键值被其他表所引用的话,将会报错,无法删除。若删除行的主键值被其他表所引用的话,将会报错,无法删除。n需求说明:u学校要求不允许1995年7月1日后出生的学生入学- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 数据库 设计 应用 课件 电子 教案 全套 教学 教程
咨信网温馨提示:
1、咨信平台为文档C2C交易模式,即用户上传的文档直接被用户下载,收益归上传人(含作者)所有;本站仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。所展示的作品文档包括内容和图片全部来源于网络用户和作者上传投稿,我们不确定上传用户享有完全著作权,根据《信息网络传播权保护条例》,如果侵犯了您的版权、权益或隐私,请联系我们,核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
2、文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为仲裁依据,个别因单元格分列造成显示页码不一将协商解决,平台无法对文档的真实性、完整性、权威性、准确性、专业性及其观点立场做任何保证或承诺,下载前须认真查看,确认无误后再购买,务必慎重购买;若有违法违纪将进行移交司法处理,若涉侵权平台将进行基本处罚并下架。
3、本站所有内容均由用户上传,付费前请自行鉴别,如您付费,意味着您已接受本站规则且自行承担风险,本站不进行额外附加服务,虚拟产品一经售出概不退款(未进行购买下载可退充值款),文档一经付费(服务费)、不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
4、如你看到网页展示的文档有www.zixin.com.cn水印,是因预览和防盗链等技术需要对页面进行转换压缩成图而已,我们并不对上传的文档进行任何编辑或修改,文档下载后都不会有水印标识(原文档上传前个别存留的除外),下载后原文更清晰;试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓;PPT和DOC文档可被视为“模板”,允许上传人保留章节、目录结构的情况下删减部份的内容;PDF文档不管是原文档转换或图片扫描而得,本站不作要求视为允许,下载前自行私信或留言给上传者【快乐****生活】。
5、本文档所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用;网站提供的党政主题相关内容(国旗、国徽、党徽--等)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
6、文档遇到问题,请及时私信或留言给本站上传会员【快乐****生活】,需本站解决可联系【 微信客服】、【 QQ客服】,若有其他问题请点击或扫码反馈【 服务填表】;文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“【 版权申诉】”(推荐),意见反馈和侵权处理邮箱:1219186828@qq.com;也可以拔打客服电话:4008-655-100;投诉/维权电话:4009-655-100。
1、咨信平台为文档C2C交易模式,即用户上传的文档直接被用户下载,收益归上传人(含作者)所有;本站仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。所展示的作品文档包括内容和图片全部来源于网络用户和作者上传投稿,我们不确定上传用户享有完全著作权,根据《信息网络传播权保护条例》,如果侵犯了您的版权、权益或隐私,请联系我们,核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
2、文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为仲裁依据,个别因单元格分列造成显示页码不一将协商解决,平台无法对文档的真实性、完整性、权威性、准确性、专业性及其观点立场做任何保证或承诺,下载前须认真查看,确认无误后再购买,务必慎重购买;若有违法违纪将进行移交司法处理,若涉侵权平台将进行基本处罚并下架。
3、本站所有内容均由用户上传,付费前请自行鉴别,如您付费,意味着您已接受本站规则且自行承担风险,本站不进行额外附加服务,虚拟产品一经售出概不退款(未进行购买下载可退充值款),文档一经付费(服务费)、不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
4、如你看到网页展示的文档有www.zixin.com.cn水印,是因预览和防盗链等技术需要对页面进行转换压缩成图而已,我们并不对上传的文档进行任何编辑或修改,文档下载后都不会有水印标识(原文档上传前个别存留的除外),下载后原文更清晰;试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓;PPT和DOC文档可被视为“模板”,允许上传人保留章节、目录结构的情况下删减部份的内容;PDF文档不管是原文档转换或图片扫描而得,本站不作要求视为允许,下载前自行私信或留言给上传者【快乐****生活】。
5、本文档所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用;网站提供的党政主题相关内容(国旗、国徽、党徽--等)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
6、文档遇到问题,请及时私信或留言给本站上传会员【快乐****生活】,需本站解决可联系【 微信客服】、【 QQ客服】,若有其他问题请点击或扫码反馈【 服务填表】;文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“【 版权申诉】”(推荐),意见反馈和侵权处理邮箱:1219186828@qq.com;也可以拔打客服电话:4008-655-100;投诉/维权电话:4009-655-100。
关于本文