数据库(四)之数据库表管理

字段的数据类型

数字数据类型

  1.  整数数据类型:bigint, int, smallint, tinyint  ?
  2.  decimal和numeric ?
  3.  money和samllmoney
  4.  float和real数据类型
  5.  Bit

字符数据类型

  1.  char 
  2.  Varchar
  3.  Test
  4.  Nchar
  5.  Nvarchar
  6.  ntest

日期和时间数据类型
   datetime和smalldatetime:
  日期和时间数据类型包括datetime和smalldatetime两种类型。这两种类型的差别在于其表示的日期和时间范围不同,时间精确的也不同。datetime所存储的日期范围是从1753年1月1日到9999年12月31日结束,时间精确的是3.33毫秒。使用smalldatetime数据类型时,所存储的日期范围是1900年1月1日到2079年12月31日结束,时间精确度是1分钟。

二进制数据类型

  二进制数据类型包括binary,varbinary,image等3种数据类型,可以用于存储二进制数据。其中,binary用于存储固定长度的二进制数据,varbinary用于存储可变长度的二进制数据。binary(n)和varbinary(n)的数据长度有n值来决定,n的取值范围是1~8000。image数据类型用于存储图像信息。

专用数据类型

  除了前面介绍的数据类型之外,Microsoft SQL Server 2008系统还提供了cursor,sql_variant,table,timestamp,uniqueidentifier,xml等6种特殊用途的本机数据类型。使用这些数据类型可以完成特殊数据对象的定义,存储和使用。

创建表

  语法格式 

CREATE TABLE
        [ database_name.[schema_name].|schema_name.]table_name
        ( { <colume_definition> | < computed_column_definition > | <         colume_set_definition>} [,...n] )
        [ ON {partiton_scheme_name (partition_colume_name ) | filegroup | "default"}]
        [ { TEXTMAGE_ON { filegroup | "default" } } ]
        [ FILESTAREAM_ON { partition_scheme_name | filegroup | "default"}]
        [ WITH ( <table_option>[,...n])]
    [;]

  例子:

CREATE TABLE 员工信息
(
    员工编号 int IDENTITY,
    员工姓名 nvarchar (10) NULL,
    所在部门编号 int NULL,
    所任职位 nvarchar (20) NULL,
    性别 nvarchar (5) NULL,
    籍贯 nvarchar (30) NULL,
    婚姻状况 nvarchar (5) NULL,
    政治面貌 nvarchar (10) NULL,
    文化程度 nvarchar (10) NULL,
    专业 nvarchar (30) NULL,
    联系电话 int NULL,
    入职时间 datetime NULL,
    离职时间 datetime NULL,
    在职状态 nvarchar (10) NULL,
    照片 image NULL
)

临时表

  临时表,顾名思义,是临时创建的,不能永久保存的表。

  临时表又可以分为本地临时表和全局临时表。本地临时表的名称以单个符号#打头,他们仅对当前的用户连接是可见的,当用户从SQL Server 2008实例断开连接时自动被删除;全局临时表的名称以两个数字符号##打头,创建后对任何用户都是可见的,当所有引用该表的用户从SQL Server 2008 断开连接时被删除。

设置标识字段

使用默认值

创建约束

修改表

  1. 执行系统存储过程:exec sp_rename '员工信息','新员工信息'
  2. 使用T-SQL语句:
    • alter table 新员工信息  add 工龄 INT null
    •  alter table 新员工信息  alter column 工龄 smallint null
    •  alter table 新员工信息  drop column 工龄

用户自定义数据类型

  用户自己设计并实现的数据类型就称为用户自定义数据类型,即使这些数据类型基于系统数据类型。当几个表中必须存储用一种数据类型时,并且为保证这些列有相同的数据类型,长度和可空性时,可以使用用户自定义的数据类型。

  当创建用户定义的数据类型时,必须提供三个数:数据类型的名称,所基于的系统数据类型,数据类型的可空性。数据库,可编程性,类型,用户定义数据类型。

规则

  规则是单独的SQL Server对象,可以关联到一个或几个表中的一列或多列。它可以使用多种方式来完成对数据值的检验,可以使用函数返回验证信息,也可以使用关键字BETWEEN,LIKE和IN完成对输入数据的检查。

  规则的作用是CHECK约束的部分功能相同,在向表的某列插入或更新数据时,用它来限制输入的新值得取值范围。规则于CHECK约束得不同主要表现在以下方面:

  • CHECK约束时用CREATE TABLE语句在创建表时指定得,而规则需要作为单独得数据库对象来实现。
  • 在一列上只能使用一个规则,但可以使用多个CHECK约束。

  语法格式

CREATE RULE rule_name
    AS
    condition_expression

  例子:

create rule sorce
    as
    @value between 0 and 100

  绑定规则:sp_bindrule sorce, '成绩信息.分数'

  解除绑定:sp_unbindrule '成绩信息.分数'

 

 

 

posted @ 2018-03-19 09:42  去伪存真  阅读(264)  评论(0编辑  收藏  举报