.NET和VB編程創(chuàng)建SQLServer

字號(hào):

1.新建一個(gè) Visual Basic .net Windows 應(yīng)用程序項(xiàng)目。默認(rèn)情況下,將 Form1 添加到項(xiàng)目中。
    2.在 Form1 上放一個(gè) Command 按鈕,并將其 Name 屬性更改為 btnCreateDatabase,將其 Text 屬性更改為 Create Database。
    3.復(fù)制下面一行代碼并粘貼到 Form1 的“general declaration”部分: Imports System.Data.SqlClient
    4.復(fù)制下面的代碼并粘貼到“Windows Form Designer generated code”區(qū)域之后:  
    Private Sub btnCreateDatabase_Click(ByVal sender As System.Object, _
    ByVal e As System.EventArgs) Handles btnCreateDatabase.Click
    Dim reader As SqlDataReader
    Dim str As String
    Dim myConn As SqlConnection = New SqlConnection("Server=(local)\netsdk;" & _
    "uid=sa;pwd=;database=master") 
    str = "CREATE DATABASE MyDatabase ON PRIMARY " & _
    "(NAME = MyDatabase_Data, " & _
    " FILENAME = 'D:\MyFolder\MyDatabaseData.mdf', " & _
    " SIZE = 2MB, " & _
    " MAXSIZE = 10MB, " & _
    " FILEGROWTH = 10%) " & _
    " LOG ON " & _
    "(NAME = MyDatabase_Log, " & _
    " FILENAME = 'D:\MyFolder\MyDatabaseLog.ldf', " & _
    " SIZE = 1MB, " & _
    " MAXSIZE = 5MB, " & _
    " FILEGROWTH = 10%) "
    Dim myCommand As SqlCommand = New SqlCommand(str, myConn)
    Try
    myConn.Open()
    reader = myCommand.ExecuteReader()
    Catch ex As Exception
    MessageBox.Show(ex.ToString())
    Finally
    If Not reader Is Nothing Then
    reader.Close()
    If (myConn.State = ConnectionState.Open) Then
    myConn.Close()
    End If
    MessageBox.Show("Database is created successfully", _
    "MyProgram", MessageBoxButtons.OK, _
    MessageBoxIcon.Information)
    End If
    End Try
    End Sub 
    5.更改連接字符串使其指向 SQL Server,要確保將 Database 參數(shù)設(shè)置為 Master 或保留為空白。
    6.按 F5 鍵或 CTRL+F5 組合鍵以運(yùn)行該項(xiàng)目,然后單擊創(chuàng)建數(shù)據(jù)庫。   
    其他注意事項(xiàng)   
    此代碼創(chuàng)建的是帶有特定屬性的自定義數(shù)據(jù)庫。  
    將要保存所創(chuàng)建 .mdf 和 .ldf 文件的文件夾必須在運(yùn)行該代碼之前就已存在、否則會(huì)引發(fā)異常。
    如果想創(chuàng)建一個(gè)類似于 SQL Server 的 Model 數(shù)據(jù)庫的數(shù)據(jù)庫并想讓它存儲(chǔ)在默認(rèn)位置,那么請(qǐng)更改代碼中的 str 變量: str = "CREATE DATABASE MyDatabase"