### SQL语句创建数据库与数据表
在SQL Server 2005中,可以通过SQL语句来创建数据库和数据表。这种方式比通过图形界面更为灵活,尤其适合于自动化部署或批量处理任务。下面将详细介绍如何使用SQL语句来创建数据库,并在其中创建一张名为`Student`的数据表。
#### 创建数据库
在SQL Server中创建数据库的基本语法如下:
```sql
CREATE DATABASE [数据库名]
ON
(
[主数据文件选项],
[次数据文件选项],
...
)
LOG ON
(
[事务日志文件选项],
...
);
```
具体到题目中的示例,创建名为`stuDB`的数据库,其SQL语句为:
```sql
CREATE DATABASE stuDB
ON PRIMARY
(
NAME = 'stuDB_data', -- 数据文件的逻辑名称
FILENAME = 'D:\stuDB\stuDB_data.mdf', -- 数据文件的实际路径
SIZE = 5MB, -- 初始大小
MAXSIZE = 100MB, -- 最大允许增长到的大小
FILEGROWTH = 15% -- 按百分比增长
)
LOG ON
(
NAME = 'stuDB_log',
FILENAME = 'D:\stuDB\stuDB_log.ldf',
SIZE = 2MB,
FILEGROWTH = 1MB -- 按固定大小增长
);
```
这里需要注意的是:
- `ON PRIMARY`部分定义了主数据文件的相关属性。
- `LOG ON`部分定义了事务日志文件的相关属性。
- `FILENAME`指定了文件的物理存储位置。
- `SIZE`指定了文件的初始大小。
- `MAXSIZE`指定了文件的最大容量。
- `FILEGROWTH`指定了文件增长的方式:可以是固定大小或按百分比增长。
#### 创建数据表
创建数据表的基本语法如下:
```sql
CREATE TABLE [表名](
[列名] [数据类型] [约束],
...
);
```
题目中给出的例子是创建一个名为`Student`的表,包含两列:`ID`和`Name`。
```sql
CREATE TABLE Student (
ID int NOT NULL PRIMARY KEY, -- 主键
Name varchar(50) NOT NULL -- 非空
);
```
这里需要注意:
- `ID`列被指定为主键(`PRIMARY KEY`),并且不允许为空(`NOT NULL`)。
- `Name`列同样不允许为空。
#### 插入数据
插入数据的基本语法如下:
```sql
INSERT INTO [表名]([列名1], [列名2], ...)
VALUES([值1], [值2], ...);
```
题目中给出了一个不完整的插入语句示例,正确的写法应该是:
```sql
INSERT INTO Student(ID, Name) VALUES(1, '张三');
```
这里需要注意的是,插入语句中的列名和值必须一一对应。
### 总结
通过上述步骤,我们已经成功地使用SQL语句创建了一个数据库`stuDB`以及其中的数据表`Student`。这种方法不仅适用于SQL Server 2005,对于其他版本的SQL Server也同样适用。通过SQL语句创建数据库和表,可以帮助开发者更好地管理数据库结构,并能够更方便地进行备份和恢复等操作。