1. 准备工作
在开始建立 SQL Server 数据库之前,我们需要经过一些准备工作。
1.1 SQL Server 安装
要建立 SQL Server 数据库,当然需要先安装好 SQL Server。安装 SQL Server 的具体步骤这里不再赘述,建议参考官方文档。
1.2 SQL Server Management Studio
SQL Server Management Studio 是一个管理 SQL Server 的工具,建议使用它来创建和管理数据库。如果没有安装,可以在 SQL Server 安装时选择安装或稍后安装,也可以从 Microsoft 下载中心下载并安装。
2. 建立新数据库
打开 SQL Server Management Studio,连接到 SQL Server 实例,鼠标右键单击“数据库”节点,选择“新建数据库”。
在“新建数据库”对话框中,输入数据库名称和其他必要信息,然后单击“确定”按钮。接下来,就可以开始配置数据库选项和创建表和其他对象了。
3. 配置数据库
3.1 配置数据库选项
在新建数据库后,需要对其进行一些配置。打开“属性”窗口,可以设置数据库的选项,如文件路径、恢复模式、自动收缩和文件增长选项等。
其中,最重要的是恢复模式选项。如果选择了“完整恢复模式”,则可以基于日志备份进行恢复。如果选择了“简单恢复模式”,则只能进行完全备份,并且在备份后所有的日志都将被截断。
3.2 添加用户
默认情况下,只有 SQL Server 登录帐户可以访问新数据库。如果需要添加其他用户,可以在“安全性”节点下创建新的登录帐户,并将其分配给数据库用户。
USE master;
GO
CREATE LOGIN name WITH PASSWORD = 'password';
GO
USE [AdventureWorks2012]
CREATE USER name FOR LOGIN name;
GO
其中,“name”是新用户的登录名,“password”是其登录密码,“AdventureWorks2012”是数据库名称。
3.3 创建表
创建表是数据库设计的中心任务之一。在 SQL Server Management Studio 中创建表可以使用图形界面或 SQL 指令。
创建表时需要指定列名、数据类型、长度和约束等信息。
CREATE TABLE [dbo].[Customers](
[CustomerID] [int] IDENTITY(1,1) NOT NULL,
[CompanyName] [nvarchar](50) NOT NULL,
[ContactName] [nvarchar](30) NULL,
[ContactTitle] [nvarchar](30) NULL,
[Address] [nvarchar](60) NULL,
[City] [nvarchar](15) NULL,
[Region] [nvarchar](15) NULL,
[PostalCode] [nvarchar](10) NULL,
[Country] [nvarchar](15) NULL,
[Phone] [nvarchar](24) NULL,
[Fax] [nvarchar](24) NULL,
CONSTRAINT [PK_Customers] PRIMARY KEY CLUSTERED
(
[CustomerID] ASC
)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]
) ON [PRIMARY];
GO
以上 SQL 代码创建了一个名为“Customers”的表,该表包含一个自增的整数类型的列“CustomerID”和其他一些列,其中“CompanyName”列不允许为空,而其他列可以为空。
3.4 创建视图
视图是由一个或多个表组成的虚拟表。视图可以用于隐藏数据、简化查询和提高安全性。
CREATE VIEW [dbo].[CustomerDetails] AS
SELECT
[Customers].[CustomerID],
[Customers].[CompanyName],
[Customers].[ContactName],
[Customers].[ContactTitle],
[Customers].[Address],
[Customers].[City],
[Customers].[Region],
[Customers].[PostalCode],
[Customers].[Country],
[Customers].[Phone],
[Customers].[Fax],
[Orders].[OrderID],
[Orders].[OrderDate],
[Orders].[ShipName],
[Orders].[ShipAddress],
[Orders].[ShipCity],
[Orders].[ShipRegion],
[Orders].[ShipPostalCode],
[Orders].[ShipCountry]
FROM [Customers] LEFT OUTER JOIN [Orders] ON [Customers].[CustomerID] = [Orders].[CustomerID];
GO
以上 SQL 代码创建了一个名为“CustomerDetails”的视图,该视图返回了“Customers”表和“Orders”表的一些列。
3.5 创建存储过程
存储过程是一段预编译的代码,可以接受参数和返回结果集。存储过程可以包含一系列的 SQL 语句和控制语句,可以用于复杂的查询、数据操作和业务逻辑等。
CREATE PROCEDURE [dbo].[GetCustomerOrders]
@CustomerID INT
AS
BEGIN
SELECT * FROM [Orders] WHERE [CustomerID] = @CustomerID;
END
GO
以上 SQL 代码创建了一个名为“GetCustomerOrders”的存储过程,该存储过程接受一个整型参数“CustomerID”,并返回所有与之相关的订单。
4. 总结
通过 SQL Server Management Studio,可以轻松地创建和管理 SQL Server 数据库、表、视图和存储过程等对象。在创建数据库时需要注意选择正确的恢复模式以及设置安全性和其他选项。在创建表、视图和存储过程时需要指定列名、数据类型、长度和约束等信息,并遵循最佳实践和标准化的命名规范。