-----------------------------------------------------------

New Message on MumbaiUserGroup

-----------------------------------------------------------
From: Yesu
Message 3 in Discussion


Hi 
Manish,
 
yes 
you can create Database using setup project
 
Please 
check the url in MSDN, if u have installed in ur machine
ms-help://MS.VSCC/MS.MSDNVS/vsintro7/html/vxwlkWalkthroughUsingCustomActionToCreateDatabaseDuringInstallation.htm
 
or 
check this
 
Hope 
it will help u
Regards
yesu

  
  
  
The following walkthrough demonstrates the use of a custom action and the 
  CustomActionData property to create a database and database table 
  during installation.
  
To create an installer class 
  
        On the File menu, point to New, and then choose 
    Project. 
        In the New Project dialog box, select Visual Basic 
    Projects in the Project Type pane, and then choose Class 
    Library in the Templates pane. In the Name box, type 
    DBCustomAction. 
        On the Project menu, choose Add New Item. 
        In the Add New Item dialog box, choose Installer Class. In 
    the Name box, type DBCustomAction. 
  
To create a data connection object 
  
        In Server Explorer, select Data Connections. Right-click and 
    choose Add Connection. 
        In the Data Link Properties dialog box, enter the server name, 
    user name, and password values that are valid for your SQL Server 
    configuration. In the database box, type master. Check the Allow 
    saving password check box. 
        Drag the new connection and drop it on the DBCustomAction.vb 
    designer to create a sqlConnection1 object. 
  
To create a text file that contains a SQL statement to 
  create a database 
  
        In Solution Explorer, select the DBCustomAction project. On the 
    Project menu, choose Add New Item. 
        In the Add New Item dialog box, choose Text File. In the 
    Name box, type sql.txt (must be in lower case). 
        Add the following to the sql.txt file: CREATE TABLE [dbo].[Employees] (
[Name] [char] (30) COLLATE SQL_Latin1_General_CP1_CI_AS NOT NULL ,
[Rsvp] [int] NULL ,
[Requests] [nvarchar] (4000) COLLATE SQL_Latin1_General_CP1_CI_AS NULL 
) ON [PRIMARY];

ALTER TABLE [dbo].[Employees] WITH NOCHECK ADD 
CONSTRAINT [PK_Employees] PRIMARY KEY CLUSTERED 
(
[Name]
) ON [PRIMARY];
        In Solution Explorer, select sql.txt. In the Properties window, 
    set the BuildAction property to Embedded Resource. 
  
To add code to the installer class to read the text 
  file 
  
        In Solution Explorer, select DBCustomAction.vb. On the View 
    menu, choose Code. 
        Add the following Imports statement at the top of the module: Imports System.IO
Imports System.Reflection
        Add the following code to the class: Private Function GetSql(ByVal Name As 
String) As String
   Try

      ' Get the current assembly.
      Dim Asm As [Assembly] = [Assembly].GetExecutingAssembly()

      ' Resources are named using a fully qualified name.
      Dim strm As Stream = Asm.GetManifestResourceStream(Asm.GetName().Name + "." + 
Name)

      ' Read the contents of the embedded file.
      Dim reader As StreamReader = New StreamReader(strm)
      Return reader.ReadToEnd()
   Catch ex As Exception
      MsgBox("In GetSQL: " & ex.Message)
      Throw ex
   End Try

End Function

Private Sub ExecuteSql(ByVal DatabaseName As String, ByVal Sql As String)
   Dim Command As New SqlClient.SqlCommand(Sql, sqlConnection1)

   Command.Connection.Open()
   Command.Connection.ChangeDatabase(DatabaseName)
   Try
      Command.ExecuteNonQuery()
   Finally
      ' Finally, blocks are a great way to ensure that the connection 
      ' is always closed.
      Command.Connection.Close()
   End Try
End Sub

Protected Sub AddDBTable(ByVal strDBName As String)
   Try
      ' Create the database.
      ExecuteSql("master", "CREATE DATABASE " + strDBName)

      ' Create the tables.
      ExecuteSql(strDBName, GetSql("sql.txt"))

   Catch ex As Exception
       ' Report any errors and abort.
       MsgBox("In exception handler: " & ex.Message)
       Throw ex
   End Try
End Sub

Public Overrides Sub Install(ByVal stateSaver As System.Collections.IDictionary)
   MyBase.Install(stateSaver)
   AddDBTable(Me.Context.Parameters.Item("dbname"))
End Sub
        On the Build menu, choose Build DBCustomAction. 
  
To create a deployment project 
  
        On the File menu, choose Add Project, New Project. 
        In the Add Project dialog box, select Setup and Deployment 
    Projects in the Project Type pane, and then choose Setup 
    Project in the Templates pane. In the Name box, type 
    DBCustomAction Installer. 
        In the Properties window, select the ProductName property and 
    type DB Installer. 
        In the File System Editor, select the Application Folder. On the 
    Action menu, choose Add, Project Output. 
        In the Add Project Output Group dialog box, select the primary 
    output for the DBCustomAction project. 
  
To create a custom installation dialog 
  
        Select the DBCustomAction Installer project in Solution Explorer. 
    On the View menu, point to Editor, and choose User 
    Interface. 
        In the User Interface Editor, select the Start node under 
    Install. On the Action menu, choose Add Dialog. 
        In the Add Dialog dialog box, select the Textboxes (A) 
    dialog. 
        On the Action menu, choose Move Up. Repeat until the 
    Textboxes (A) dialog is above the Installation Folder node. 
        In the Properties window, select the BannerText property and type 
    Specify Database Name. 
        Select the BodyText property and type This dialog allows you 
    to specify the name of the database to be created on the database 
    server. 
        Select the Edit1Label property and type Name of DB:. 
        Select the Edit1Property property and type CUSTOMTEXTA1. 
        Select the Edit2Visible, Edit3Visible, and 
    Edit4Visible properties and set them to false. 
  
To create a custom action 
  
        Select the DBCustomAction Installer project in Solution Explorer. 
    On the View menu, point to Editor, and choose Custom 
    Actions. 
        In the Custom Actions Editor, select the Install node. On the 
    Action menu, choose Add Custom Action. 
        In the Select item in project dialog box, double-click the 
    Application Folder. 
        Select the Primary output from DBCustomAction(Active) item. 
        In the Properties window, select the CustomActionData property 
    and type /dbname=[CUSTOMTEXTA1]. 
        On the Build menu, choose Build DBCustomActionInstaller. 
    
  
To install on your development computer 
  
        Select the DBCustomAction Installer project in Solution Explorer. 
    On the Project menu, choose Install. 
    
This will run the installer on your development computer. 
  
To deploy to another computer 
  
        In Windows Explorer, navigate to your project directory and find the 
    built installer. The default path will be \documents and 
    settings\yourloginname\DBCustomAction Installer\project 
    configuration\DBCustomAction Installer.msi. The default project 
    configuration is Debug. 
        Copy the DBCustomAction Installer.msi file and all other files and 
    subdirectories in the directory to another computer. 
    Note   To install 
      on a computer that is not on a network, copy the files to traditional 
      media such as CD-ROM.
    
On the target computer, double-click the Setup.exe file to run the 
    installer. 
  
To uninstall the application 
  
        In the Windows Control Panel, double-click Add/Remove Programs. 
        In the Add/Remove Programs dialog box, select DBCustomAction 
    Installer and click Remove. 
    Tip   To 
      uninstall from your development computer, on the Project menu, 
      choose Uninstall.
  See Also
  
Custom 
  Actions Management in Deployment | CustomActionData 
  Property | <MSHelp:link tabIndex=0 
  keywords="vboriADONETConnections">Connecting to Data Sources with 
  ADO.NET</MSHelp:link> | Error 
  Handling in Custom Actions 
  

  

  
Send 
  feedback to Microsoft

-----------------------------------------------------------

To stop getting this e-mail, or change how often it arrives, go to your E-mail 
Settings.
http://groups.msn.com/MumbaiUserGroup/_emailsettings.msnw

Need help? If you've forgotten your password, please go to Passport Member Services.
http://groups.msn.com/_passportredir.msnw?ppmprop=help

For other questions or feedback, go to our Contact Us page.
http://groups.msn.com/contact

If you do not want to receive future e-mail from this MSN group, or if you received 
this message by mistake, please click the "Remove" link below. On the pre-addressed 
e-mail message that opens, simply click "Send". Your e-mail address will be deleted 
from this group's mailing list.
mailto:[EMAIL PROTECTED]

Reply via email to