Jump to content

Correr Script SQL após instalação


IvorY

Recommended Posts

Então é assim, tenho um projecto pronto a instalar, mas para funcionar correctamente, é necessário antes criar uma base de dados SQL com as tabelas e os tuplos.

Tenho tudo delineado na instalação, mas como não devo ter a possibilidade de instalar o programa no PC destino e a pessoa que vai correr a instalação não percebe pevas de SQL, queria criar uma instrução ou o que for necessário para executar o script automaticamente.

Já andei a investigar nos fóruns internacionais que sugeriam uma classe Installer, mas não consegui entender muito bem a mecânica daquilo.

Link to comment
Share on other sites

Se a aplicação é standalone não deverias recorrer a bases de dados que estejam dependentes de instâncias a correr localmente.

Deverias considerar opções como SQLite, que te garantem praticamente a mesma coisa, mas não estão dependentes de instâncias.

Seguem como um simples ficheiro junto da aplicação.

Se não quiseres mudar, podes tentar espreitar um installer chamado Inno Setup, onde consegues escrever scripts para instalar o server de MSSQL e criar uma instância.

Há bastante suporte online.

Edited by ribeiro55

Sérgio Ribeiro


"Great coders aren't born. They're compiled and released"
"Expert coders do not need a keyboard. They just throw magnets at the RAM chips"

Link to comment
Share on other sites

Pois, eu considerei outras opções mas os meus conhecimentos em BDs é bastante limitado.

Em relação ao Inno Setup, não devo ter explicado bem o meu problema. O PC destino já tem uma instância de SQL Server instalada, eu queria apenas criar a base de dados, tipo instruções create database [DB], etc etc.

Não há maneira de, através do VS2010, forçar o instalador a abrir o SQL Server e correr o script? Eu já tentei via Costum Actions no instalador, mas não permite. Também tenho o VS2012, mas para projectos de Setups só tem o Install Shield LE.

Link to comment
Share on other sites

Se já existe uma instância a correr, presumindo também que tem um utilizador do teu conhecimento, basta fazer os comandos de CREATE directamente para lá.

Se usas a base de dados no projecto, sabes fazer queries... ou tens tudo ligado automaticamente (binded)?

Sérgio Ribeiro


"Great coders aren't born. They're compiled and released"
"Expert coders do not need a keyboard. They just throw magnets at the RAM chips"

Link to comment
Share on other sites

Peço desculpa de demorar tanto tempo a responder, mas estive ausente e sem PC nos últimos dias.

Sim, sei fazer queries, e tenho algumas preparadas no SQL, mas as usadas no programa foram criadas dentro do VS. O resto, datagrids e campos da BD estão ligados automaticamente, como eu disse, o meu conhecimento é limitado, ainda não acabei o curso e só tive uma cadeira orientada a SQL e VB.

Eu só queria uma maneira de fazer a criação remota da BD, para não haver necessidade de user avançado na instalação.

Link to comment
Share on other sites

Dá uma vista de olhos por a Wiki.

Existem lá alguns artigos que te podem ilucidar sobre como deves proceder para enviar comandos directamente para lá.

A partir do momento em que consigas fazer isso, basta chamar os comandos necessários para construíres a estructura.

Investiga também, essencialmente o comando CREATE, que é o que te permite criar objectos na base de dados.

Sérgio Ribeiro


"Great coders aren't born. They're compiled and released"
"Expert coders do not need a keyboard. They just throw magnets at the RAM chips"

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...

Important Information

By using this site you accept our Terms of Use and Privacy Policy. We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.