文档介绍:C#可视化程序开发
第一篇 SQL Server 2000
SQL Server 2000简介
SQL Server2000是微软公司开发的一个具有客户/服务器体系结构的关系型数据库管理系统(RDBMS),它使用Transact-SQL在客户机和SQL Server服务器之间传递请求和响应。
关系数据库管理系统
SQL Server 服务器
客户端
结果
客户端应用程序
OLAP
OLTP
查询
客户端应用程序
客户端网络库
客户端
SQL Server
关系引擎
存储引擎
服务器
本地数据库
数据库 API
(OLE DB, ODBC,
DB-Library)
处理器
内存
开放数据服务
服务器网络库
客户端应用程序
客户端网络库
客户端
SQL Server
关系引擎
存储引擎
服务器
本地数据库
数据库 API
(OLE DB, ODBC,
DB-Library)
处理器
内存
开放数据服务
服务器网络库
查询
结果集
结果集
查询
1
2
3
4
5
返回
关系模型构建数据库:
维护数据与数据之间的关系
在不违反定义数据之间关系的规则的前提下保证数据能被正确存取
在系统出现故障的情况下,恢复所有数据到已知的一致点
数据完整性
事务
约束的类型:
DEFAULT约束
CHECK约束
PRIMARY KEY约束
UNIQUE约束
FOREIGN KEY约束级联引用完整性
返回
决定使用何种约束
完整性类型
约束类型
描述
域
DEFAULT
如果在INSERT语句中未显式提供值,则指定为列提供的值
CHECK
指定列中可接受的数据值
REFERENTIAL
基于其他表中的列的值,指定可接受的用于更新的数据值
实体
PRIMARY KEY
惟一标识每一列,确保用户没有输入重复的值。同时创建一个索引以增强性能。不允许空值
UNIQUE
确保在非主键列中不输入重复值,并创建一个索引以增强性能。允许空值
引用
FOREIGN KEY
定义一列或多列的值与同表或其他表中主键的值匹配
CHECK
基于同表中其他列的值,指定列中可接受的数据值
DEFAULT 约束
如果一个列的值在 INSERT 语句中没有指定,DEFAULT 约束将自动输入一个值,可以是预先指定的常量、NULL 或者一个系统函数运行时的值
语法:[CONSTRAINT 约束名] DEFAULT 约束表达式
创建 DEFAULT 约束的两种方法
创建一个默认(CREATE DEFAULT),然后使用存储过程 sp_bindefault 将默认绑定到一个列
CREATE TABLE 或 ALTER TABLE 时使用 DEFAUTL 约束
应用 DEFAULT 约束的注意事项
DEFAULT 约束创建时将检查表中的现存数据
DEFAULT 约束只对 INSERT 语句有效
每列只能定义一个 DEFAULT 约束
不能和“标识”属性及 rowversion 数据类型共同使用
DEFAULT 约束(续)
DEFAULT 约束示例
为 Northwind 数据库中的 Customers 表的 ContactName 列创建 DEFAULT 约束,当 INSERT 语句中此列的值没有提供的时候,自动使用“UNKNOWN”作为它的值
USE NorthwindALTER TABLE ADDCONSTRAINT DF_contactname DEFAULT 'UNKNOWN' FOR ContactName