Create a database in SQL Server 2005

5 pts.
Tags:
SQL Database
SQL Server
SQL Server 2005
SQL Server database
SQL stored procedures
Create a database in sql server 2005 but database name passed as parameter into a stored procedure
ASKED: March 5, 2011  7:05 AM
UPDATED: October 14, 2013  2:37 PM

Answer Wiki

Thanks. We'll let you know when a new response is added.

The CREATE DATABASE statement doesn’t accept a parameter, so you’ll need to use dynamic SQL.

CREATE PROCEDURE usp_CreateDatabase
@DatabaseName sysname
AS
DECLARE @sqlcmd NVARCHAR(4000)
SET @sqlcmd = 'CREATE DATABASE [' + @DatabaseName + ']'
EXEC (@sqlcmd)
GO

You’ll also need to run the procedure as a login that has CREATE DATABASE rights. Either by logging into the instance with a login which has the rights or by using the EXECUTE AS statement within the procedure like is shown below.

CREATE PROCEDURE usp_CreateDatabase
@DatabaseName sysname
AS
DECLARE @sqlcmd NVARCHAR(4000)
SET @sqlcmd = 'CREATE DATABASE [' + @DatabaseName + ']'
EXECUTE AS LOGIN = 'SomeLogin'
         EXEC (@sqlcmd)
REVOKE
GO

Discuss This Question:  

 
There was an error processing your information. Please try again later.
Thanks. We'll let you know when a new response is added.
Send me notifications when members answer or reply to this question.

REGISTER or login:

Forgot Password?
By submitting you agree to receive email from TechTarget and its partners. If you reside outside of the United States, you consent to having your personal data transferred to and processed in the United States. Privacy

Forgot Password

No problem! Submit your e-mail address below. We'll send you an e-mail containing your password.

Your password has been sent to:

To follow this tag...

There was an error processing your information. Please try again later.

REGISTER or login:

Forgot Password?
By submitting you agree to receive email from TechTarget and its partners. If you reside outside of the United States, you consent to having your personal data transferred to and processed in the United States. Privacy

Thanks! We'll email you when relevant content is added and updated.

Following