当前位置:首页 > 数据库 > 正文

SQL Server 2016中创建数据库的具体步骤和操作方法详解?

在SQL Server 2016中创建数据库是一个相对简单的过程,可以通过SQL Server Management Studio (SSMS)或者TSQL命令来实现,以下是通过TSQL命令创建数据库的详细步骤:

使用TSQL命令创建数据库

  1. 连接到SQL Server实例

    您需要通过SSMS或其他方式连接到SQL Server实例。

  2. 编写创建数据库的TSQL命令

    创建数据库的TSQL命令格式如下:

    SQL Server 2016中创建数据库的具体步骤和操作方法详解? 第1张

    CREATE DATABASE [数据库名] ON PRIMARY ( NAME = N'[主数据文件名]', FILENAME = N'路径[主数据文件名].mdf', SIZE = 512MB, MAXSIZE = UNLIMITED, FILEGROWTH = 5% ) LOG ON ( NAME = N'[日志文件名]', FILENAME = N'路径[日志文件名].ldf', SIZE = 512MB, MAXSIZE = 2048MB, FILEGROWTH = 5% );

    [数据库名]是您要创建的数据库的名称,[主数据文件名]和[日志文件名]是主数据文件和日志文件的名称,路径是文件所在的物理路径。

  3. 设置数据库的文件和文件组

    如果需要,您可以创建多个文件组来组织数据库文件,命令如下:

    SQL Server 2016中创建数据库的具体步骤和操作方法详解? 第2张

    ALTER DATABASE [数据库名] ADD FILEGROUP [文件组名];

    然后为文件组添加文件:

    ALTER DATABASE [数据库名] ADD FILE ( NAME = N'[文件名]', FILENAME = N'路径[文件名].ndf', SIZE = 512MB, MAXSIZE = UNLIMITED, FILEGROWTH = 5% ) TO FILEGROUP [文件组名];
  4. 设置初始化参数(可选):

    如果需要,您还可以设置数据库的一些初始化参数,如排序规则、恢复模式等。

    CREATE DATABASE [数据库名] ON PRIMARY ( NAME = N'[主数据文件名]', FILENAME = N'路径[主数据文件名].mdf', SIZE = 512MB, MAXSIZE = UNLIMITED, FILEGROWTH = 5% ) LOG ON ( NAME = N'[日志文件名]', FILENAME = N'路径[日志文件名].ldf', SIZE = 512MB, MAXSIZE = 2048MB, FILEGROWTH = 5% ) WITH CATALOG_COLLATION = SQL_Latin1_General_CP1_CI_AS RECOVERY FULL;
  5. 执行命令

    在SSMS的查询窗口中输入上述命令,然后执行,如果命令执行成功,您将在SSMS的消息窗口中看到成功消息。

    SQL Server 2016中创建数据库的具体步骤和操作方法详解? 第3张

  6. 示例

    以下是一个创建名为TestDB的数据库的示例,包括主数据和日志文件:

    CREATE DATABASE TestDB ON PRIMARY ( NAME = N'TestDB_data', FILENAME = N'C:SQLDataTestDB_data.mdf', SIZE = 512MB, MAXSIZE = UNLIMITED, FILEGROWTH = 5% ) LOG ON ( NAME = N'TestDB_log', FILENAME = N'C:SQLDataTestDB_log.ldf', SIZE = 512MB, MAXSIZE = 2048MB, FILEGROWTH = 5% );

    FAQs

    Q1:为什么我的数据库创建后没有数据文件?

    A1: 在默认情况下,SQL Server 2016创建的数据库只有一个主数据文件和一个日志文件,如果您没有指定其他文件,那么数据库只会使用这两个文件,如果需要添加更多文件,您可以使用ALTER DATABASE命令来添加。

    Q2:如何查看已经创建的数据库?

    A2: 您可以使用SELECT语句查询sys.databases系统视图来查看已经创建的数据库:

    SELECT name FROM sys.databases;

    这将返回SQL Server实例中所有数据库的名称列表。

0