《数据库中的表》PPT课件.ppt
《《数据库中的表》PPT课件.ppt》由会员分享,可在线阅读,更多相关《《数据库中的表》PPT课件.ppt(71页珍藏版)》请在得力文库 - 分享文档赚钱的网站上搜索。
1、第第4章章 数据库中的表数据库中的表创建表1表管理和维护2表数据的操作3本章重点本章重点1.数据表的概念数据表的概念2.数据表的创建、修改、删除数据表的创建、修改、删除3.表数据的插入、修改、删除及导入表数据的插入、修改、删除及导入/导出导出本章难点本章难点1.表的创建语法表的创建语法2.表的修改语法表的修改语法3.数据库导入数据库导入/导出操作导出操作第第4章章 数据库中的表数据库中的表创建表1表管理和维护2表数据的操作34.1 创建表创建表v数据库表的概念数据库表的概念 数据表是由数据记录按照一定的顺序和格式构成的数据集合,是包含数据库中所有数据的数据库对象。数据表中的每一行代表惟一的一条
2、记录,每一列代表记录中的一个域。学号姓名性别出生日期系部入学时间000101张三男1980计算机2000000201李伟男1981经 济 管理2000010101王丽女1982数学2001学生表学生表 4.1 创建表创建表(表)考试数据库学生数据、试题数据、教师数据、试卷数据等要存储起来学生关系模型、试题关系模型、教师关系模型、试卷关系模型4.1 创建表创建表v与表有关的名词与表有关的名词表结构:每个数据库包含了表结构:每个数据库包含了若干个表若干个表。每个表具有一。每个表具有一定的结构,称之为定的结构,称之为“表型表型”。所谓表型是指组成表的。所谓表型是指组成表的名称及数据类型,也就是日常表
3、格的名称及数据类型,也就是日常表格的“栏目信息栏目信息”记录:每个表包含了若干行数据,它们是表的记录:每个表包含了若干行数据,它们是表的“值值”,表中的一行称为一个记录,因此,表是记录的有限,表中的一行称为一个记录,因此,表是记录的有限集合。集合。字段:每个记录由若干个数据项构成,将构成记录的字段:每个记录由若干个数据项构成,将构成记录的每个数据项称为字段。每个数据项称为字段。关键字:在学生信息表中若不加以限制,每个记录的关键字:在学生信息表中若不加以限制,每个记录的姓名、性别、系名、出生时间和民族这姓名、性别、系名、出生时间和民族这5个字段的值个字段的值都有可能相同,但是学号字段的值对表中所
4、有记录来都有可能相同,但是学号字段的值对表中所有记录来说一定不同,学号是关键词,也就是说通过说一定不同,学号是关键词,也就是说通过“学号学号”字段可以将表中的不同记录区分开来。字段可以将表中的不同记录区分开来。4.1 创建表创建表v数据类型数据类型数据类型就是定义每个列所能存储的数据值和存数据类型就是定义每个列所能存储的数据值和存储格式。为列选择合适的数据类型非常重要,因为其储格式。为列选择合适的数据类型非常重要,因为其影响着系统的空间利用、性能、可靠性和是否易于管影响着系统的空间利用、性能、可靠性和是否易于管理等特性。理等特性。列的数据类型可以是列的数据类型可以是SQLServer2005提
5、提供的系统数据类型,也可以是用户自定义数据类供的系统数据类型,也可以是用户自定义数据类型。型。4.1 创建表创建表1、字符型数据类型字符型数据类型字符数据的类型包括字符数据的类型包括Char,Varchar和和Text。字符。字符数据是由任何字母、符号和数字任意组合而成的数据。数据是由任何字母、符号和数字任意组合而成的数据。n char:是定长字符数据类型。每个字符使用一个字:是定长字符数据类型。每个字符使用一个字节的存储空间,使用固定长度来存储字符,最长可节的存储空间,使用固定长度来存储字符,最长可容纳容纳8KB。如果实际的字符串小于给定的最大长度,。如果实际的字符串小于给定的最大长度,则会
6、则会以空格填充以空格填充,如果实际的字符串大于给定的最,如果实际的字符串大于给定的最大长度,则大长度,则截断截断。n varchar:是变长字符数据类型。可以存储到:是变长字符数据类型。可以存储到8000个字符的变长字符型数据,存储为实际的字符串的个字符的变长字符型数据,存储为实际的字符串的长度。长度。n text:当要存储的字符的数据量非常庞大时,则使:当要存储的字符的数据量非常庞大时,则使用用text数据类型。他的最大长度可以达到数据类型。他的最大长度可以达到2G左右。左右。4.1 创建表创建表2、数值型数据类型数值型数据类型数值数据只包含数字,例如正数和负数、小数(浮数值数据只包含数字,
7、例如正数和负数、小数(浮点数)和整数。包括:点数)和整数。包括:bigint,int,smallint,tinyint,decimal,numeric,float和和real。(1)整型数据bit:取值范围只能是0或1,通常用作真假逻辑。bigint:占用8个字节int:占用4个字节smallint:占用2个字节tinyint:占用1个字节4.1 创建表创建表(2)数字数据类型可以精确指定小数点两边的总位数(精度)和小数点右面的位数(刻度).1=精度=380=刻度=精度在SQLServer中精确数值型是decimal和numeric,两者唯一的区别在于decimal不能用于带有identity
8、关键字的列。例:decimal(6,3)若记录赋值89.123456,实际存储的是89.1234.1 创建表创建表(3)浮点数据类型能够存储范围非常大的数字,一般应用于科学计算或者统计计算等,不要求绝对精度的运算场合。real:存储范围占用4个字节,精度可达7位。float(n):可以用n来确定科学计数法中的数据尾数的位数,范围可达53位。当n的取值为124时,可达到的精度是7位;当n的取值是2553时,精度是15位,用8个字节来存储。例:1.6432E20,-7.918E104.1 创建表创建表3、货币型数据类型货币数据表示正的或者负的货币数量。在MicrosoftSQLServer中,货币
9、数据的数据类型是Money和Smallmoney。Money数据类型要求8个存储字节。Smallmoney数据类型要求4个存储字节。例:$2000.14$5004.1 创建表创建表4、时间日期数据类型日期和时间数据类型用于存储日期和时间信息,包括Datetime和Smalldatetime两种类型。日期和时间数据类型由有效的日期和时间组成,不存在只存储时间数据类型或日期数据类型。Datetime:表示范围1753年1月1日9999年12月31日,占用8个字节可以精确到毫秒。Smalldatetime:表示范围1900年1月1日2079年6月6日,占用4个字节可以精确到分。4.1 创建表创建表S
10、QLServer中常用的日期和时间表示格式如下:分隔符可用/、-或.,例如:4/15/2005、4-15-05或4.15.2005字母日期格式:April15,2005不用分隔符:20050501时:分:秒:毫秒:08:05:25:28时:分AM|PM:05:08AM、08:05PM4.1 创建表创建表5、其他数据类型Image数据类型中存储的数据是以位字符串存储的,不是由SQLServer解释的,必须由应用程序来解释。Timestamp是时间戳数据类型Bit数据类型由1或者0组成Unicode数据类型包括Nchar,Nvarchar和Ntext。Unicode是“统一字符编码标准”,用于支持
11、国际上非英语种的字符数据的存储和处理4.1 创建表创建表以上介绍了大部分的系统数据类型,建立以上介绍了大部分的系统数据类型,建立数据表时,我们会设置各个字段名称以及数据数据表时,我们会设置各个字段名称以及数据类型,在输入数据时,类型,在输入数据时,SQLServer会根据数会根据数据类型来检查输入的值是否符合要求,如果不据类型来检查输入的值是否符合要求,如果不符,便会出现错误信息提醒操作者。有时由于符,便会出现错误信息提醒操作者。有时由于数据表中的部分字段没有数据可填入(例如员数据表中的部分字段没有数据可填入(例如员工表中有的员工没有电话)而发生错误,要想工表中有的员工没有电话)而发生错误,要
12、想避免此类错误,我们可以利用避免此类错误,我们可以利用NULL值来解决值来解决4.1 创建表创建表nNULL值不是0也不是空格,更不是填入字符串“NULL”,而是表示“不知道”、“不确定”或“暂时没有数据”的意思。比如在员工表中,可以使用NULL值来代替部分员工的电话号码,表示该员工的电话号码暂时不知道。n当某一字段可以接受NULL值时,表示该字断的值可以不要输入。如果某个字段的值一定要输入才又意义时,则可以设置为NOTNULL。4.1 创建表创建表类型类型数据类型数据类型长度长度字符数据类型字符数据类型CharCharVarcharVarcharTextText1 180008000个字符,
13、个字符,1 1个字符占个字符占1 1个字节个字节1 180008000个字符,个字符,1 1个字符占个字符占1 1个字节个字节1 12 23131-1-1个字符,个字符,1 1个字符占个字符占1 1个字节个字节整型整型BigintBigintIntIntSmallintSmallintTinyintTinyintBitBit8 8字节,字节,-2-263632 26363-1-14 4字节,字节,-2-231312 23131-1-12 2字节,字节,-2-215152 21515-1-11 1字节,字节,0 02552550 0,1 1,或,或NULLNULL精确数值类型精确数值类型Deci
14、malDecimalNumericNumeric2 21717字节,视精确度而定字节,视精确度而定2 21717字节,视精确度而定字节,视精确度而定近似数值类型近似数值类型FloatFloatRealReal8 8字节字节4 4字节字节货币型数据类型货币型数据类型MoneyMoneySmallmoneySmallmoney8 8字节字节4 4字节字节时间日期数据类型时间日期数据类型DatetimeDatetimeSmalldatetimeSmalldatetime8 8字节字节4 4字节字节类型类型数据类型数据类型长度长度二进制数据类型二进制数据类型BinaryBinaryVarbinaryV
15、arbinary1 180008000个字节,存储时需另外增加个字节,存储时需另外增加4 4字节字节1 180008000个字节,存储时需另外增加个字节,存储时需另外增加4 4字节字节图像型图像型ImageImage0 02102109 9字节字节标记型标记型TimestampTimestampUniqueidentifierUniqueidentifier8 8字节字节1616字节字节Unicode字符型字符型NcharNcharNvarcharNvarcharNtextNtext1 140004000个字符,个字符,1 1个字符个字符2 2个字节个字节1 140004000个字符,个字符,
16、1 1个字符个字符2 2个字节个字节1 12 23030-1-1个字符,个字符,1 1个字符个字符2 2个字节个字节问题问题1,char,nchar,nvarchar,varchar有什么区别有什么区别?2,text和和ntext有什么区别以及和上面各种字符有什么区别以及和上面各种字符类有什么区别?类有什么区别?3,关于带,关于带big和带和带small的类型,比如:的类型,比如:smallint,int和和bigint;以及;以及smalldatetime,datetime和和bigdatetime有什么区别?有什么区别?v两个字符型字段分别定义为两个字符型字段分别定义为char(10)ch
17、ar(10)和和varchar(10)varchar(10),当给它们,当给它们存入存入“123”123”这个数据时,这个数据时,char(10)char(10)字段占用十个字节的存储空字段占用十个字节的存储空间,而间,而varchar(10)varchar(10)只占用只占用3 3个字节存储空间,这就是个字节存储空间,这就是charchar和和varcharvarchar的区别。可以看出的区别。可以看出varcharvarchar比较适合存储长度变化很大比较适合存储长度变化很大的数据。的数据。vncharnchar和和charchar,nvarcharnvarchar和和varcharvar
18、char的区别在于是否使用的区别在于是否使用UnicodeUnicode进行编码。一般情况下在仅仅处理中文及英文,不涉及特殊符进行编码。一般情况下在仅仅处理中文及英文,不涉及特殊符号时不需要使用号时不需要使用UnicodeUnicode。另一种需要用。另一种需要用UnicodeUnicode的情况是需要的情况是需要将字符串数据添加到将字符串数据添加到SQLSQL语句中执行,又不想里面的东西如单引语句中执行,又不想里面的东西如单引号使号使SQLSQL产生误解,可以将其用产生误解,可以将其用UnicodeUnicode编码,这时每个字符都编码,这时每个字符都将占用两个字节,单引号也不会被将占用两个
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 数据库中的表 数据库 中的 PPT 课件
限制150内