Click here to Skip to main content
Click here to Skip to main content
Go to top

Create an SQL Server Database Using C#

, 24 Apr 2013
Rate this:
Please Sign up or sign in to vote.
Create a SQL Server database using C#.

This interface is akin to the SQL Server New Database menu.

Introduction

In this presentation, I would like to show you how to create an SQL Server database using C#. Actually I had to deal with the problem when programming for our own specific DBMS.

First of all, you have to create a connection to the master database of your SQL Server to manipulate the new database (master is the database where you can get details about the whole DBMS).

Using the code

The code for creating the database is very simple, the main function can be listed as follows:

private void CreateDatabase(DatabaseParam DBParam)
{
    System.Data.SqlClient.SqlConnection tmpConn;
    string sqlCreateDBQuery;
    tmpConn = new SqlConnection();
    tmpConn.ConnectionString = "SERVER = " + DBParam.ServerName + 
                         "; DATABASE = master; User ID = sa; Pwd = sa";
    sqlCreateDBQuery = " CREATE DATABASE "
                       + DBParam.DatabaseName
                       + " ON PRIMARY " 
                       + " (NAME = " + DBParam.DataFileName +", "
                       + " FILENAME = '" + DBParam.DataPathName +"', " 
                       + " SIZE = 2MB,"
                       + " FILEGROWTH =" + DBParam.DataFileGrowth +") "
                       + " LOG ON (NAME =" + DBParam.LogFileName +", "
                       + " FILENAME = '" + DBParam.LogPathName + "', " 
                       + " SIZE = 1MB, "
                       + " FILEGROWTH =" + DBParam.LogFileGrowth +") ";
     SqlCommand myCommand = new SqlCommand(sqlCreateDBQuery, tmpConn);
     try
     {
         tmpConn.Open();
         MessageBox.Show(sqlCreateDBQuery);
         myCommand.ExecuteNonQuery();
         MessageBox.Show("Database has been created successfully!", 
                           "Create Database", MessageBoxButtons.OK, 
                                       MessageBoxIcon.Information);
      }
     catch (System.Exception ex)
     {
         MessageBox.Show(ex.ToString(), "Create Database", 
                                     MessageBoxButtons.OK, 
                              MessageBoxIcon.Information);
     }
     finally
     {
         tmpConn.Close();
     }
     return;
}

Note

You have to change the DBParam.ServerName to your appropriate SQL Server name.

Checking your results

To see the results, click on Enterprise Manager of SQL Server, click on the plus (+) next to your Server, click on (+) next to Database tab, and you can see the test DB.

Conclusion

Any comments or questions can be sent to: phamthuhai@gmail.com.

License

This article, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)

Share

About the Author

Nguyen Thanh Phuong
Web Developer
Vietnam Vietnam
I am Vietnamese. I am a researcher in Computer Science and a freelance translator in German and Vietnamese.
Willing to share experience!
Follow on   LinkedIn

Comments and Discussions

 
GeneralPerfect PinsussAhmed Erarslan1-Jun-05 21:56 
GeneralRe: Perfect PinmemberAhmad(Ahmed)1-Jun-05 21:57 
GeneralActual Observation PinsussAnonymous26-Apr-05 15:37 
GeneralRe: Actual Observation PinmemberNguyen Thanh Phuong26-Apr-05 17:25 
GeneralWTF PinsussAnonymous26-Apr-05 4:08 
GeneralRe: WTF PinsussAnonymous26-Apr-05 13:53 
GeneralRe: WTF PinmemberNguyen Thanh Phuong26-Apr-05 17:27 
GeneralRe: WTF Pinmemberhadjiyvanov27-Apr-05 0:02 
GeneralRe: WTF PinmemberMember 31361519-Aug-09 10:42 
GeneralRe: WTF PinmemberMember 471095515-Oct-09 15:09 

General General    News News    Suggestion Suggestion    Question Question    Bug Bug    Answer Answer    Joke Joke    Rant Rant    Admin Admin   

Use Ctrl+Left/Right to switch messages, Ctrl+Up/Down to switch threads, Ctrl+Shift+Left/Right to switch pages.

| Advertise | Privacy | Mobile
Web02 | 2.8.140926.1 | Last Updated 24 Apr 2013
Article Copyright 2005 by Nguyen Thanh Phuong
Everything else Copyright © CodeProject, 1999-2014
Terms of Service
Layout: fixed | fluid