创建数据库及表1
需积分: 0 97 浏览量
更新于2022-08-03
收藏 186KB PDF 举报
根据给定的信息,本文将详细解析“创建数据库及表1”的相关知识点,包括数据库的创建、各类表的设计以及约束的应用。
### 数据库的创建
在SQL Server中创建一个数据库涉及两个主要步骤:定义数据文件(主数据文件)和事务日志文件的位置与属性。根据示例中的SQL语句:
```sql
CREATE DATABASE manage
ON PRIMARY (
NAME = 'manage',
FILENAME = 'C:\Users\chen\Desktop\manage.mdf',
SIZE = 10MB,
FILEGROWTH = 10MB
)
LOG ON (
NAME = 'manage_log',
FILENAME = 'C:\Users\chen\Desktop\manage_log.ldf',
SIZE = 5MB,
FILEGROWTH = 10%
);
```
- **数据文件**:`NAME`定义文件的逻辑名称,`FILENAME`指定文件的物理路径,`SIZE`设定初始大小,`FILEGROWTH`指定了当数据文件满时自动增加的量。
- **日志文件**:日志文件同样包含上述属性,但日志文件的`FILEGROWTH`属性可以接受百分比值作为增长策略。
通过这种方式创建的数据库`manage`,具备了基本的数据存储能力和事务处理能力。
### 创建表与约束
接下来,我们分析几个具体的表创建过程,这些表设计体现了不同的实体关系,并且应用了多种约束。
#### 行政班级表 `Class_number`
创建了一个名为`Class_number`的表,用于记录行政班级信息。该表只包含一个字段`Class`,并设为主键。
```sql
CREATE TABLE [dbo].[Class_number] (
[Class] NVARCHAR(9) NOT NULL,
CONSTRAINT [PK_Class_number] PRIMARY KEY ([Class])
);
```
- **字段类型**:`NVARCHAR(9)`表示存储的是Unicode字符类型,最多允许9个字符。
- **主键约束**:确保每个班级的标识是唯一的。
随后通过`INSERT`语句填充了三个班级的数据。
#### 性别表 `Gender`
创建性别表`Gender`,同样只有一个字段`Gender`。
```sql
CREATE TABLE [dbo].[Gender] (
[Gender] NVARCHAR (4) NOT NULL,
CONSTRAINT [PK_Gender] PRIMARY KEY ([Gender])
);
```
- **字段类型**:`NVARCHAR (4)`定义性别字段,长度为4。
- **主键约束**:确保性别信息的唯一性。
#### 学院表 `College`
创建了`College`表,用于存储学院信息。
```sql
CREATE TABLE [dbo].[College] (
[College] NVARCHAR (20) NOT NULL,
CONSTRAINT [PK_College] PRIMARY KEY ([College])
);
```
- **字段类型**:`NVARCHAR (20)`,长度为20。
- **主键约束**:确保每个学院的名称是唯一的。
#### 专业表 `Major`
创建`Major`表,存储专业信息。
```sql
CREATE TABLE [dbo].[Major] (
[Major] NVARCHAR (20) NOT NULL,
CONSTRAINT [PK_Major] PRIMARY KEY ([Major])
);
```
- **字段类型**:`NVARCHAR (20)`,长度为20。
- **主键约束**:确保每个专业的名称是唯一的。
#### 课程性质表 `Course_Category`
创建`Course_Category`表,存储课程的性质。
```sql
CREATE TABLE [dbo].[Course_Category] (
[Course Category] NVARCHAR (10) NOT NULL,
CONSTRAINT [PK_Course_Category] PRIMARY KEY ([Course Category])
);
```
- **字段类型**:`NVARCHAR (10)`,长度为10。
- **主键约束**:确保每种课程性质的唯一性。
#### 考查方式表 `Way_Of_Investigation`
创建`Way_Of_Investigation`表,存储考查方式信息。
```sql
CREATE TABLE [dbo].[Way_Of_Investigation] (
[Way Of Investigation] NCHAR (4) NOT NULL,
CONSTRAINT [PK_Way_Of_Investigation] PRIMARY KEY ([Way Of Investigation])
);
```
- **字段类型**:`NCHAR (4)`,长度固定为4。
- **主键约束**:确保每种考查方式的唯一性。
通过以上分析,我们可以看到,在创建数据库和表的过程中,不仅合理地规划了数据结构,还通过约束机制保障了数据的完整性和一致性。这对于后续的数据操作和管理至关重要。
丽龙
- 粉丝: 29
- 资源: 332
最新资源
- 基于mmse的不确定电力系统有限次测量的分析估计 源代码, matlab代码按照高水平文章复现,保证正确 大量可再生分布式能源的预期渗透正推动下一代电力系统走向不确定性,这可能对状态估计的可靠性和复杂
- 西南科技大学数据分析期末大作业.zip
- 西门子PLC1200立体库机器人码垛机伺服视觉AGV程序 包括2台西门子PLC1215程序和2台西门子触摸屏TP700程序 PLC和基恩士相机视觉定位Modbus TCP通讯(SCL语言) PLC和A
- 知名扫地机代码方案 某知名大厂扫地机代码 适合需要学习项目与代码规范的工程师 硬件驱动包含 陀螺仪姿态传感器bmi160、电源管理bq24733等 软件驱动包括 IIC、PWM、SPI、多路A
- siddhi-execution-json jar包用于在处理事件中对json字符串进行处理
- 直流充电桩,双枪控制板方案,需要的砸单
- 埃斯顿量产控制器 埃斯顿量产伺服控制器C代码和硬件图纸 1)TMS320F28335+FPGA全套代码;全C写的DSP代码,VHDL写的FPGA代码(Lattice MXO1200) 2)AD电
- 信捷XC PLC与西门子V20变频器通讯程序 原创可直接用于生产的程序,程序带注释,并附送触摸屏程序,有接线方式和设置,通讯地址说明等 程序采用轮询,可靠稳定 器件:信捷XC3的PLC,西门子V20
- 台达DVP ES系列PLC与3台英威腾GD变频器通讯 程序带注释,并附送昆仑通态和威纶通触摸屏程序,有接线方式,设置 器件:台达DVP ES系列的PLC,3台英威腾GD系列变频器,昆仑通态,威纶通触
- 控制系统的数学建模,被控对象的数学模型建立,simulink模型实现 提供四旋翼和带尾翼直升机,共轴式直升机的数学模型、simulink模型,推导 提供资料,文献 刚体飞行动力学模型,运动学模型
- 深度学习中的Fashion-MNIST数据集与卷积神经网络实现及其训练分析
- MPC控制器设计,模型预测控制,线性时变模型预测控制,LTV MPC,提供理论讲解与应用实现 提供MPC算法、LTV MPC 算法在直升机和四旋翼中的应用实例 提供模型预测控制资料 提供matl
- Flink Forward Asia 2024 上海站(脱敏)PPT合集.zip
- Node.js安装与环境配置指南:覆盖Windows、macOS及Linux系统全流程
- 微信小程序开发全流程详解:从准备到发布的全面指南与关键技术解析
- 斑马打印机C#控制程序源代码,适合自己进行二次开发 文档齐全,包括驱动程序和如何设置斑马打印机的说明文档 源代码可以打印条形码标签和二维码标签