数据库与表的创建及数据操作指南
立即解锁
发布时间: 2025-08-20 01:14:24 阅读量: 1 订阅数: 3 


C# 5.0与SQL Server 2012数据库开发实战
# 数据库与表的创建及数据操作指南
## 1. 数据库存储管理与属性探索
默认情况下,数据和日志文件会持续增长直至磁盘空间耗尽,即它们对磁盘空间的使用不受限制。但在实际应用中,对数据库进行存储管理至关重要,因此通常会为数据库设置大小限制。
创建数据库后,有时需要了解其属性,如文件名、路径、大小等。可按以下步骤操作:
1. 在对象资源管理器中,右键单击新创建的数据库(如 `MySqlDb`),选择“属性”。
2. 转到左侧的“文件”选项卡,这里会显示 SQL Server 在执行之前的单行数据库创建语句时为你选择的设置。
## 2. 自定义设置创建数据库
若想对数据库创建过程进行更多控制,如设定数据库的最大增长大小、初始空间耗尽后的增长幅度,甚至指定数据和日志文件的存储位置,可使用以下参数:
| 参数名称 | 描述 |
| ---- | ---- |
| Name | 数据库文件的逻辑名称,用于在 SQL Server 系统中引用该数据库。 |
| Filename | 数据库文件(`.mdf` 和 `.ldf`)的物理存储路径。 |
| Size | 创建数据库时的初始大小,单位可以是千字节、兆字节、吉字节或太字节。若未指定单位,默认单位为兆字节。例如,`Size = 1` 等同于 `Size = 1MB`。需要注意的是,`Size` 参数的初始值至少为 4MB,否则执行创建数据库语句时会报错。 |
| MaxSize | 所创建数据库的最大大小限制。若省略该参数,SQL Server 会在磁盘有空间的情况下持续增长数据库,直至磁盘空间耗尽。`MaxSize` 的单位可以是千字节、兆字节、吉字节或太字节,默认单位为兆字节。 |
| FileGrowth | 当需要新空间来存储传入数据时,数据库的增长大小。可以用百分比或千字节、兆字节、吉字节、太字节表示。默认单位为兆字节。若未指定该参数,默认的 `FileGrowth` 设置为 1MB。 |
以下是使用上述参数创建数据库的具体步骤:
1. 确保“新建查询”窗格的工具栏中“保存”图标下方显示的是 `master` 数据库。
2. 进入查询窗格,输入以下代码以确保当前处于 `master` 数据库:
```sql
use master
```
3. 选中上述语句,点击“执行”或按 `F5`,应看到消息“Command(s) completed successfully.”。
4. 按 `Enter` 键添加新行,输入以下创建数据库的语句:
```sql
CREATE DATABASE SQL2012Db
ON PRIMARY
(
NAME = Sql2012Data,
FILENAME = 'C:\Program Files\Microsoft SQL Server\MSSQL11.SQL2012\MSSQL\DATA\Sql2012Data.mdf',
SIZE = 4MB,
MAXSIZE = 15MB,
FILEGROWTH = 20%
)
LOG ON
(
NAME = Sql2012Log,
FILENAME = 'C:\Program Files\Microsoft SQL Server\MSSQL11.SQL2012\MSSQL\DATA\Sql2012Log.ldf',
SIZE = 1MB,
MAXSIZE = 5MB,
FILEGROWTH = 1MB
)
```
5. 选中整个语句,点击“执行”或按 `F5`。
6. 语句成功执行后,在对象资源管理器中选择“数据库”节点,右键单击并选择“刷新”,应能看到新创建的数据库。
## 3. 表的基础知识
若数据库中没有表,那么该数据库将毫无用处,因为表为数据存储提供了基础设施。在创建表之前,需了解其基本构成。表由列组成,数据以行的形式插入到表中(在关系数据库理论中,行也称为记录或元组,列也称为字段)。每行可输入的数据类型由表中各列的数据类型定义。例如,姓名通常需要字符串或字符数据类型,而年龄则需要整数数据类型。
此外,还需明确哪些列需要数据录入。`Null` 或 `Not Null` 关键字用于指定数据接受标准,即是否必须输入某列的值。例如,在填写保险表格时,要求输入姓名、地址和社保号码(SSN),并非每个人都有 SSN,但姓名是必填项。在创建表时,可将姓名字段指定为 `Not Null`,将 SSN 字段指定为 `Null` 来满足这一业务需求。
`Null` 表示未定义或未知的值,即未指定任何内容。例如,在姓名字段中填写空格,从技术上讲,这也算作信息,因为空格是一个字符。同样,若某人没有 SSN 而输入了 `000 - 00 - 0000`,这也不是未定义的值,因为输入的零是字符,属于信息。默
0
0
复制全文
相关推荐








