INSTALADOR COM BASE DE DADOS ACOPLADA.
Boa tarde, rapaziada
Estou tentando criar um instalador, que instale junto o banco de dados da aplicação. Já vi vários tutoriais na net com Inno Setup, InstallShied mas não consigo adicionar meu banco de dados criado em sql server.
Gostaria que fosse igual a firebird que se instala silenciosamente junto com a aplicação. Isso é possÃvel com sql server?
Não consigo imaginar meu cliente instalando, pessoalmente, o sql server em sua máquina.
Estou tentando criar um instalador, que instale junto o banco de dados da aplicação. Já vi vários tutoriais na net com Inno Setup, InstallShied mas não consigo adicionar meu banco de dados criado em sql server.
Gostaria que fosse igual a firebird que se instala silenciosamente junto com a aplicação. Isso é possÃvel com sql server?
Não consigo imaginar meu cliente instalando, pessoalmente, o sql server em sua máquina.
Não sei se é a melhor forma, mas uma sugestão:
Cria seu pacote de instalação usando o Publish mesmo do Visual Studio, ou qualquer outro instalador simples. Coloque o pacote de instalação do SQL Server e do arquivo do seu banco de dados (pode ser um .sql) como Content do pacote de instalação.
Crie um novo projeto. Pode ser Windows Form ou Console mesmo. Ele vai ser responsável por chamar o pacote de instalação e executar a instalação do sql server.
Use Process.Start para iniciar chamar o outro pacote de instalação (que você gerou anteriormente).
Acabando de instalar, você verifica via código se o arquivo do pacote de instalação do SQL Server tá aonde deveria estar. Se tiver, basta você usar Process.Start novamente. Só que dessa vez, você vai passar LINHA DE COMANDO para passar os dados de instalação. (Exemplo: nome da instância, modo de autenticação, usuário padrão, etc).
Uma vez finalizado o processo, você verifica se o SQL Server foi instalado via código. (Melhor verificar, vai que o usuário finalizou a instalação).
Estando instalado, agora basta você executar o arquivo .sql e ser feliz.
Abraços!
Cria seu pacote de instalação usando o Publish mesmo do Visual Studio, ou qualquer outro instalador simples. Coloque o pacote de instalação do SQL Server e do arquivo do seu banco de dados (pode ser um .sql) como Content do pacote de instalação.
Crie um novo projeto. Pode ser Windows Form ou Console mesmo. Ele vai ser responsável por chamar o pacote de instalação e executar a instalação do sql server.
Use Process.Start para iniciar chamar o outro pacote de instalação (que você gerou anteriormente).
Acabando de instalar, você verifica via código se o arquivo do pacote de instalação do SQL Server tá aonde deveria estar. Se tiver, basta você usar Process.Start novamente. Só que dessa vez, você vai passar LINHA DE COMANDO para passar os dados de instalação. (Exemplo: nome da instância, modo de autenticação, usuário padrão, etc).
Uma vez finalizado o processo, você verifica se o SQL Server foi instalado via código. (Melhor verificar, vai que o usuário finalizou a instalação).
Estando instalado, agora basta você executar o arquivo .sql e ser feliz.
Abraços!
veja q um programa pra usar sqlserver em geral é multi usuário, e roda em rede.....o sqlserver em si precisa estar apenas em um servidor q nem sempre precisa ter o seu programa instalado....
tirando essa etapa, e imaginando agora seu programa devidamente instalado e configurado o caminho ao servidor do sql, o código do seu programa deve fazer as verificações se o banco e tabelas existem, se não existirem, seu código deve criar o banco e tabelas......
tirando essa etapa, e imaginando agora seu programa devidamente instalado e configurado o caminho ao servidor do sql, o código do seu programa deve fazer as verificações se o banco e tabelas existem, se não existirem, seu código deve criar o banco e tabelas......
Bom dia, NICKOSOFT
Você poderia me indicar algum tutorial para criar o código necessário para que seja feita a verificação se o banco existe ou não. OU algum esboço de código para que eu possa me apoiar na criação do mesmo.
Você poderia me indicar algum tutorial para criar o código necessário para que seja feita a verificação se o banco existe ou não. OU algum esboço de código para que eu possa me apoiar na criação do mesmo.
veja se ajuda, é pra MYSQL, e parte de uma enorme classe q uso pra esse gerenciamento e toda manipulação dos dados diretamente no BD
do testar servidor já retorna true/false q dao continuidade ou disparam a tela para configuração do caminho do servidor.....q salva nas variáveis lidas pra conexão...
Public Function TestarServidor() As Boolean
If Conexao.State = ConnectionState.Open Then
Conexao.Close()
End If
Conexao.ConnectionString = [Ô]Server=[Ô] & My.Settings.SERVER & [Ô];User id=[Ô] & My.Settings.USER & [Ô];Password=[Ô] & plainText
Try
Conexao.Open()
Return True
Catch ex As Exception
Return False
End Try
End Function
Public Function TestarBD() As Boolean
If Conexao.State = ConnectionState.Open Then
Conexao.Close()
End If
Conexao.ConnectionString = [Ô]Server=[Ô] & My.Settings.SERVER & [Ô];User id=[Ô] & My.Settings.USER & [Ô];Password=[Ô] & plainText & [Ô];database=[Ô] & My.Settings.DATABASE
Try
Conexao.Open()
Return True
Catch ex As Exception
Return False
End Try
End Function
Public Function CriarBD() As Boolean
Conexao.ConnectionString = [Ô]Server=[Ô] & My.Settings.SERVER & [Ô];User id=[Ô] & My.Settings.USER & [Ô];Password=[Ô] & plainText
Conexao.Open()
Try
[ô]Conexao = AbreConexao()
If Conexao.State = ConnectionState.Open Then
Dim sql As String = [Ô]CREATE DATABASE SEIBO[Ô]
Comando = New MySqlCommand(sql, Conexao)
Comando.ExecuteNonQuery()
Return True
Else
Return False
End If
Catch ex As Exception
Return False
End Try
End Function
Public Sub VerificarTabelas()
[ô]verificacao da tabela alunos
Try
Conexao = AbreConexao()
Dim sql As String = [Ô]select * from alunos[Ô]
Comando = New MySqlCommand(sql, Conexao)
Comando.ExecuteNonQuery()
Catch ex As Exception
Conexao = AbreConexao()
Dim sql As String = [Ô]create table Alunos ([Ô] _
& [Ô]ID INT not null auto_increment PRIMARY KEY, [Ô] _
& [Ô]Nome varchar(150), [Ô] _
& [Ô]Situacao varchar(1), [Ô] _
& [Ô]Entrada date, [Ô] _
& [Ô]Saida date)[Ô]
Comando = New MySqlCommand(sql, Conexao)
Comando.ExecuteNonQuery()
Finally
Conexao.Close()
End Try
do testar servidor já retorna true/false q dao continuidade ou disparam a tela para configuração do caminho do servidor.....q salva nas variáveis lidas pra conexão...
Olá NICKOSOFT, boa tarde
Muito obrigado por sua ajuda, sem ela não conseguiria.
Instalei o sql server e com o inno setup montei o instalador e tudo correu bem.
Estou estudando bastante o código me disponibilizou, foi de grande ajuda.
Estou encerrando o tópico.
Um abraço
Muito obrigado por sua ajuda, sem ela não conseguiria.
Instalei o sql server e com o inno setup montei o instalador e tudo correu bem.
Estou estudando bastante o código me disponibilizou, foi de grande ajuda.
Estou encerrando o tópico.
Um abraço
Tópico encerrado , respostas não são mais permitidas