数据库基础 之 “表”
数据库是干什么的?顾名思义,是存储数据的地方,然而数据库中数据又存储在哪里呢?自然是存储在表中。“表”就是数据库中用于存储数据的工具。数据库中的表和我们现实中的表格类似,也是由行Row和列Column组成。
列是同类信息组成,是一个属性或者特征,又称为一个字段,行包括若干列的信息,又叫做一条记录,意义是信息的组合,整体用来描述一个对象。比如一个学生信息表,其中的列有姓名,性别,出生年月,籍贯,等等,这些信息组合在一起都是为了来描述学生这么个对象。
在设计数据库表时,要根据数据库逻辑结构设计的要求,确定需要什么样的表,每5个表中都有哪些数据,所包含的数据的类型,表的各列及每一列的数据类型,列宽,哪些允许空值,哪些需要建立索引,哪些列是主键,外键等。在创建和操作表的过程中,将对表进行更为细致的设计。
数据库表中的数据的完整性是通过使用列的数据类型,约束,默认设计或规则等实现的,sqlserver提供多种强制列中数据完整性的机制。创建一个表最有效的方法是将表中所需的信息一次定义完成,包括数据约束和附加成分。
有了表的基本概念,接下来自然就是建表,其实关于数据库操作一般就分两类,一种是利用企业管理器,另一种自然就是使用T-SQL语言。所以表的建立一般用着两种方法。如下:
用企业管理器建立
用T-SQL语言建立
CREAT TABLE
[database-name.[ower].|ower.]table-name
({<colum-definition>|column-nameAS copputed-column-expressionl | <table-constraint>} [,...n])
[ON {filegroup | DEFAULT}]
[TEXTIMAGE_ON {filegroup | DEFAULT}]
<column_definition>::={column_name data_type}
[[DEFAULT constant_oxpression] | [IDENTITY [ seed, increment]]
[<column_constraint>][...n]
Database_name :用于指定在其中创建库名称
ower:用于指定新建表的所有者的用户名
Table_name:用于指定新建的表的名称
Column_name用于指定新建表的列的名称
Computed_column_expression用于指定计算列的列值表达式
ON {filegroup|DEDAULT}:用于指定存储表的文件组名。
TEXTIMAGE_ON用于指定text ntext和image列的数据存储的文件组
Data_type用于指定列的数据类型
DEDAULT用于指定列的数据类型
Constant_expression用于指定列的缺省值的常量表达式
IDEENTITY用于指定列为标识列
Seed用于指定标识列的初始值
Increment用于指定标识列的增量值
Column_constraint_constraint用于指定列约束和表约束。
例子如下:创建一个员工信息表
CREATETABLE employee
(number int not null,
name varchar(20)NOT NULL,
sex char(2)NULL,
birthday datetimenull,
hire_date datetimeNOT NULL
DEFAULT(getdate())
professional_title varchar(10)
null,
salary moneynull,
memo ntextnull
)
同样的对表的增删改查自然也一般是两类方法,那就是用企业管理器和用T_SQL语言
“表”说起来简单,可是真正用起来,或许和想象的就不一样了,因为数据库就是在研究表,如果表弄的很透彻了,那么数据库就完全没有问题了。