SQL Server数据库原理以及知识内容点

数据库常用对象:

1:表(包含数据库中所有数据的对象、行和列组成,用于组织和存储数据)

2:字段(表中的列,一个表可以有多个列,自己的属性数据类型(决定了该字段存储了哪种类型的数据),大小(长度))

3:视图:(表虚拟表)一张或多张表

4:索引:为了给用户提供一种快速访问数据的途径,索引是依赖于表而建立的,检索数据时,不用对整个表进行扫描。

5:存储过程:是一组为了完成特定功能的SQL语句的集合(可以查询、插入、修改、删除),编译后,存储在数据库中,以名称进行调用,当调用执行时,这些操作就会被执行。

6:触发器:在数据库中,属于用户定义的SQL事务命令集合,针对与表来说,当对表执行增删改查操作时,命令就会自动触发而去执行。

7:约束:对数据表的列,进行的一种限制。可以更好地规范表中的列。

8:缺省值:对表中的列可以指定一个默认值,当进行插入时,如果没有为这个列插入值,那么就会自动预先设置默认值进行自动补充。

数据类型介绍

数值型:

1)整型数据:bigint(8字节),int(4字节),smallint(2字节) , tinyint(1字节)

2)浮点型:float近似数值 存在精度损失 real 近似数值,float(24)

decimal精度准确,不存在精度损失 decimal(18,2)

  1. 货币类型:money,smallmoney
  2. 二进制数据类型:

bit(允许0、1或null)

binary(固定长度的二进制数据,最多8000字节)

varbinary(可变长的二进制数据,最多8000字节)

varbinary(max)

image(可变长的二进制数据,最多2GB)

字符型:

  1. character字符串:char 固定长度 8000

                    varchar  可变长字符串8000

                     varchar(max)  

                     text  可变长字符串

  1. unicode字符串

    nchar(n)、nvarchar(n)、nvarchar(max)、ntext   存储大小character字符串的一半

  前面带n,存储中文汉字还是英文或数字,长度都是1,存储大小2个汉字。不带n,英文或数字,就是1个长度,中文就是两个长度

日期型:

  1. datetime 精确度高
  2. datetime2 精确度更高(100纳秒)
  3. smalldatetime 精度到一分钟,时间范围小
  4. date 存储日期(不包含小时、分钟)
  5. time 存储时间

其他类型:

     1)uniquedentifier    guid全球唯一标识符

创建主键、外键:

主键:唯一标识的一条数据,主键值唯一、不能为空。

标识列:一个列设置成标识列,它就不能手动插入。插入时,自动生成的,这个列,类型必须是不带小数的数值型。

外键:在两个表要建立之间的联系时使用(创建一个列为外键时,他在另外一个比表必须是主键)

foreign key(school_id) references school(id)

(school为一张表名,id为列名)

  约束条件:

      规定表中的数据规则。如果存在违反约束的数据行为,行为就会被阻止。在什么时候创建约束?创建表之后,使用脚本创建表,可以在创建的过程中,也可以创建后再来建立约束。

分类:
      主键:Primary Key约束

      外键: Foreign Key约束   加强两个表的一个列或多个列数据之间的连接的。先建立主表的主键,然后在定义从表中的外键。只有主表的主键才能被从表的用来作为外键使用。主表限制了从表更新和插入的操作。当删除主表中的某种数据,应该是先删除从表中相关的数据,再删除主表。

      Unique约束:唯一性约束 确保表中的一列数据没有相同的值。与主键约束符合,但又不同,主键只能有一个,但一个表中可以定义多个唯一的约束

      Check约束:通过逻辑表达式来判断数据的有效性,用来限制输入一列或多列的值的范围。

      Default约束:默认值约束。用户在插入新的数据行时,如果该行没有指定数据,那么系统将默认值赋给该列。
如果没有设置默认值,系统就会默认为NUll值

你可能感兴趣的:(数据库开发,数据库)