Create a database

Applies to: SQL Server

This article describes how to create a database in SQL Server by using SQL Server Management Studio or Transact-SQL.

Note

To create a database in Azure SQL Database using T-SQL, see Create database in Azure SQL Database.

Limitations and restrictions

  • A maximum of 32,767 databases can be specified on an instance of SQL Server.

Prerequisites

  • The CREATE DATABASE statement must run in autocommit mode (the default transaction management mode) and isn't allowed in an explicit or implicit transaction.

Recommendations

  • The master database should be backed up whenever a user database is created, modified, or dropped.

  • When you create a database, make the data files as large as possible based on the maximum amount of data you expect in the database.

Permissions

Requires CREATE DATABASE permission in the master database, or requires CREATE ANY DATABASE, or ALTER ANY DATABASE permission.

To maintain control over disk use on an instance of SQL Server, permission to create databases is typically limited to a few SQL Server login.

Use SQL Server Management Studio

Create a database

  1. In Object Explorer, connect to an instance of the SQL Server Database Engine and then expand that instance.

  2. Right-click Databases, and then select New Database.

  3. In New Database, enter a database name.

  4. To create the database by accepting all default values, select OK; otherwise, continue with the following optional steps.

  5. To change the owner name, select (...) to select another owner.

    Note

    The Use full-text indexing option is always checked and dimmed because, beginning in SQL Server 2008 (10.0.x), all user databases are full-text enabled.

  6. To change the default values of the primary data and transaction log files, in the Database files grid, select the appropriate cell and enter the new value. For more information, see Add Data or Log Files to a Database.

  7. To change the collation of the database, select the Options page, and then select a collation from the list.

  8. To change the recovery model, select the Options page and select a recovery model from the list.

  9. To change database options, select the Options page, and then modify the database options. For a description of each option, see ALTER DATABASE SET Options (Transact-SQL).

  10. To add a new filegroup, select the Filegroups page. Select Add and then enter the values for the filegroup.

  11. To add an extended property to the database, select the Extended Properties page.

    1. In the Name column, enter a name for the extended property.

    2. In the Value column, enter the extended property text. For example, enter one or more statements that describe the database.

  12. To create the database, select OK.

Use Transact-SQL

Create a database

  1. Connect to the Database Engine.

  2. From the Standard bar, select New Query.

  3. Copy and paste the following example into the query window and select Execute. This example creates the database Sales. Because the keyword PRIMARY isn't used, the first file (Sales_dat) becomes the primary file. Because MB or KB aren't specified in the SIZE parameter for the Sales_dat file, it uses MB and is allocated in megabytes. The Sales_log file is allocated in megabytes because the MB suffix is explicitly stated in the SIZE parameter.

USE master;
GO

CREATE DATABASE Sales ON
(NAME = Sales_dat,
    FILENAME = 'C:\Program Files\Microsoft SQL Server\MSSQL16.MSSQLSERVER\MSSQL\DATA\saledat.mdf',
    SIZE = 10,
    MAXSIZE = 50,
    FILEGROWTH = 5)
LOG ON
(NAME = Sales_log,
    FILENAME = 'C:\Program Files\Microsoft SQL Server\MSSQL16.MSSQLSERVER\MSSQL\DATA\salelog.ldf',
    SIZE = 5 MB,
    MAXSIZE = 25 MB,
    FILEGROWTH = 5 MB);
GO

For more examples, see CREATE DATABASE (SQL Server Transact-SQL).

Next steps