欢迎来到天天文库
浏览记录
ID:45632913
大小:770.50 KB
页数:39页
时间:2019-11-15
《《表与表数据操作》PPT课件》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、3.1表结构和数据类型3.2表的完整性约束3.3创建和修改表3.4表的数据操作第三章表与表数据操作表3.1“学生”表学号姓名性别出生时间专业总备注081101王林男1999-2-12计算机50081103王燕女1989-10-06计算机50081108林一帆男1989-08-05计算机52081202王林男1989-01-29通信工程40081204马琳琳女1989-02-10通信工程423.1表结构与数据类型1、表和表结构记录字段表有关的几个概念:(1)表结构:组成表的各列的名称及数据类型。(2)记录:表中的行数据,它们是表
2、的“值”。(3)字段:表中的列,单列值为数据项.。(4)空值:空值(NULL)通常表示未知数据。(5)关键字:表中能唯一标识记录的某一字段或字段组合。【例3.1】学生表的表结构学生(学号,姓名,性别,出生时间,专业,总学分,备注)2、数据类型设计表结构,主要是设计字段,为字段指定数据类型。字段的数据类型决定了数据的取值、范围和存储格式。字段的数据类型取自系统数据类型和用户定义的数据类型。系统数据类型:int,numeric,moneychar,varchar,datetime【例3.2】AintA的值:50,128Bnumer
3、ic(5,2)B的最大值:999.99Cchar(6)C的值:acbC的长度:6Dvarchar(6)D的值:abcD的长度:3C≠B列名数据类型长度是可默认值说明学号Char6×无主键,前2位年级,中间2位班级号,后2位序号姓名Char8×无性别Bit1√11:男;0:女出生时间Datetime√无专业Char12√无总学分Int4√00≤总学分<160备注Varchar500√无表3.3XSB的表结构3、表结构以学生管理系统的三个表:学生表(XSB)、课程表(KCB)和成绩表(CJB)为例介绍如何设计表的结构列名数据类型长
4、度可空默认值说明课程号定长字符型(char)3×无主键课程名定长字符型(char)16×无开课学期整数型(tinyint)1√1只能为1~8学时整数型(tinyint)1√0学分整数型(tinyint)1×0表3.4KCB的表结构列名数据类型长度可空默认值说明学号定长字符型(char)6×无主键课程号定长字符型(char)3×无主键成绩整数型(int)默认值√00≤成绩<100表3.5CJB的表结构数据库的完整性:是指数据的正确性、有效性和相容性。完整性是为了防止数据库中存在不符合语义的数据,防止错误信息的输入和输出。数据库完
5、整性约束条件:加在数据库数据之上的语义约束条件。完整性检查:在DBMS中检查数据是否满足完整性条件的机制。3.2表的完整性约束1、数据完整性分类(1)实体完整性(行完整性)要求表中有一个主键,主键值不能为空且能唯一地标识记录实现方法:UNIQUE约束、PRIMARYKEY约束或IDENTITY属性(2)域完整性(列完整性)指给定列输入的有效性。如:定义列的类型、格式、取值范围实现方法:设定数据类型,CHECK约束、DEFALUT、NOTNULL等学号:char(6)课程号:char(3)成绩:int学号,课程号不为空学分的取值
6、范围为0~100(3)参照完整性(表完整性)外键:如果一个表中的一个字段或若干个字段的组合值是另一个表的主键,则称该字段或字段组合值为该表的外键。2、实现完整性约束(1)创建表时定义完整性约束(2)修改表时定义完整性约束(3)定义规则和默认值,再将规则和默认值与字段捆绑。实现完整性约束。3、SQL的完整性约束PRIMARYKEY主键约束FOREIGNKEY外键约束CHECK检查条件约束NOTNULL/NULL空值约束DEFAULT默认值约束UNIQUE唯一约束3.3创建表和修改表1、在SSMS中创建表操作步骤:(1)启动SSM
7、S,在“对象资源管理器”中。选择“数据库”
8、”demo”
9、展开“数据库”,选择“表”对象
10、创建表:快捷菜单新建表。使用表:选择表(XSB)修改表结构:快捷菜单修改查看并编辑记录:快捷菜单打开2、使用T-SQL命令创建表语法格式:CREATETABLE<表名>(<列名1><数据类型>[<列级完整性约束条件>],<列名2><数据类型>[<列级完整性约束条件>],…[<表级完整性约束条件>])【例3.5】使用T-SQL语句创建学生情况表XSB,该表的结构见表3.3。CREATETABLEXSB(学号char(6)NOTNULLPRI
11、MARYKEY,姓名char(8)NOTNULL,性别bitDEFAULT(1),出生时间datetime,专业char(12),总学分intCHECK(总学分>=0AND总学分<=160),备注varchar(500))GO【例3.6】使用T-SQL语句创建课程表KCB,该
此文档下载收益归作者所有