你的位置:首页 > ASP.net教程

[ASP.net教程]数据表,你美我怎不爱


我们为什么要学数据表?
这个回答其实很简单,只要想一想就可以。
解析:
如果没有数据表,那么关键字、主键、索引等也就无从谈起。在数据库画板中可以显示数据库中的所有数据表(即使不是用PowerBuilder创建的表),创建数据表,修改表的定义等数据表是数据库中一个非常重要的对象,是其他对象的基础。
数据表(或称表)是数据库最重要的组成部分之一。数据库只是一个框架,数据表才是其实质内容。如“教学管理系统” 中,教学管理”数据库包 含分别围绕特定主题的6个数据表:“教师”表“课 程”表、“成绩”表、“学生”表、“班级”表和 “授课”表,用来管理教学过程中学生、教师、课程等信息。这些各自独立的数据表通过建立关系被联接起来,成为可以交叉查阅、一目了然的数据库。
 
建表原则
解析:
为减少数据输入错误,并能使数据库高效工作,表设计应按照一定原则对信息进行分类,同时为确保表结构设计的合理性,通常还要对表进行规范化设 计,以消除表中存在的冗余,保证一个表只围绕一个主题,并使表容易维护。

 
信息分类原则 
解析:
每个表应该只包含关于一个主题的信息
当每个表只包含关于一个主题的信息时,就可以独立于其他主题来维护该主题的信息。例如,应将教师基本信息保存在“教师”表中。如果将这些基本信息保存在“授课”表中,则在删除某教师的授课信息,就会将其基本信息一同删除。
表中不应包含重复信息
表间也不应有重复信息 每条信息只保存在一个表中,需要时只在一处进行更新,效率更高。例如,每个学生的姓名、性别等信息,只在“学生”表中保存,而“成绩”中不再保存这些信息。
 
说这么多了,你看看这些表,漂亮吧。




 
接下来介绍数据表的内容:

四种完整性约束

   实体完整性:针对数据行设置的完整性

   域完整性:针对数据列设置的完整性。

   引用完整性:外键约束

   自定义完整性:为了满足我们的业务需求,我们自己量身定制的完整性约束,一般

  通过存储过程。

SQL Server中数据类型

 int:存储整型数字

 numeric(18, 2):存储小数

 decimal(18, 2):存储小数

 nvarchar():存储文字

  只要是保存字符串就用nvarchar()类型,n代表的unicode编码,该编码是国际通用编码,可以避免乱码的出现。

  var代表长度可变。表中该列真正存储的内容就占它本身的空间,而不会占用该列通过(20)设置的长度所占用的空间。

 varchar():存储可变长度的文本

 char(4):存储固定长度的文本

 nvarchar(Max)

 DateTime:保存日期和时间

 照片:image(二进制存储)

存储姓名:nvarchar(20)

--存储年龄:int

--存储性别:bit

--存储一篇文章:nvarchar(max)

注意:

使用ntext或者是text,因为text和ntext读取效率非常低。

为表建立约束

主键约束

  一张表一定要设置主键

非空约束

  03.默认值约束

  04.check约束

  05.外键约束

  注意:外键约束只能设置在外键表中

主键:
用于区别其他实体,在同一个表中主键的值不能重复

外键:

在一张表表A中某列是主键,但是在另外一张表表B中该列不是主键。那么表A称为主键表,表B称为外键表。

主外键建立后注意事项

当主表中没有对应的记录时,不能将记录添加到子表

      ——成绩表中不能出现在学员信息表中不存在的学号

不能更改主表中的值而导致子表中的记录孤立

      ——把学员信息表中的学号改变了,学员成绩表中的学号也应当随之改变

子表存在与主表对应的记录,不能从主表中删除该行

      ——不能把有成绩的学员删除了

删除主表前,先删子表

      ——先删学员成绩表、后删除学员信息表

通配符:

解析:  “_”:有且只有一个字符。

  “%”:任意个的任意字符。

 以上两种特殊字符一般与Like一起使用。

                                                                                      这些都是我总结的核心内容,还是很辛苦的,有漏的地方望大家补充补充