SQL基础:建表、约束与数据完整性

需积分: 9 1 下载量 114 浏览量 更新于2024-09-12 收藏 47KB DOCX 举报
"本文主要介绍了SQL的基础语句,特别是与T-SQL相关的操作,包括创建和删除数据库、备份数据库、创建新表以及设置各种约束。此外,还涉及到表的结构设计,如设置非空约束、默认值和检查约束。" 在SQL中,约束是用来维护数据库中数据完整性的重要手段。SQL Server提供了五种主要的约束类型: 1. 主关键字约束(PrimaryKeyConstraint):用于定义表中的唯一标识符,确保每行数据都有唯一的标识,通常不允许为空。 2. 外关键字约束(ForeignKeyConstraint):关联两个表,确保引用完整性,即外键字段的值必须存在于另一个表的主键字段中。 3. 惟一性约束(UniqueConstraint):与主键类似,但不一定要作为主键,只保证数据的唯一性,允许有NULL值。 4. 检查约束(CheckConstraint):限制特定列的值,确保它们满足特定的条件。 5. 缺省约束(DefaultConstraint):当没有指定值时,提供一个默认值。 以下是一些SQL的基础操作: 1. 创建数据库: ```sql CREATE DATABASE database-name ``` 2. 删除数据库: ```sql DROP DATABASE dbname ``` 3. 备份数据库: 首先,创建备份设备: ```sql USE master EXEC sp_addumpdevice 'disk', 'testBack', 'c:\mssql7backup\MyNwind_1.dat' ``` 然后,执行备份操作: ```sql BACKUP DATABASE pubs TO testBack ``` 4. 创建新表: ```sql CREATE TABLE tabname ( col1 type1 [NOT NULL] [PRIMARY KEY], col2 type2 [NOT NULL], ... ) ``` 在示例中,创建了一个名为`tableok`的表,包含以下字段: - `col1`: 整型,无默认值和约束 - `col2_notnull`: 整型,非空约束 - `col3_default`: 字符串(nchar(1)),非空且默认值为'男' - `col4_default`: 日期时间,非空且默认值为当前系统时间 - `col5_check`: 整型,非空且有检查约束,值需在18到55之间 - `col6_check`: 字符串(nchar(9)),非空且有检查约束,前7位必须是'msd0902',倒数第二位是0-9中的任意数字,最后一位不能是6-9 - `cola_primary`: 字符串(nchar(5)),非空且为主键 - `colb`: 表示可能还有其他字段,未给出具体定义 这些基本语句构成了SQL的核心,是理解和操作数据库的基础。通过熟练掌握这些语句,可以有效地创建、管理数据库以及确保数据的完整性和一致性。在实际开发中,还会涉及到更多的复杂操作,如索引、视图、存储过程、触发器等,这些都是进阶的SQL知识。