• Revista PROGRAMAR: Já está disponível a edição #53 da revista programar. Faz já o download aqui!

overcloked

[VB 2005] Data Source (grande problema)....

10 mensagens neste tópico

ppl estou entalado...  :bye2:

O problema é o seguinte, construi um prog para servir de backofice para uma aplicação web de vendas de produtos online, usei o VB 2005 e para aceder, gravar, alterar info na Base de Dados em SQL 2000 e usei o DataSource no VB.

Neste momento tenho a aplicação toda feita, mas deparei-me com um grande problema que é o endereço do servidor da BD tem de ser alterado facilmente, uma vez que não sei qual o IP ou hostname do servidor da BD onde isto poderá ser implementado....

Uma vez que contrui as querys todas atravez do .xsd tenho todas as funções/procedimentos dependentes do data source  :P

Ora o que pensei talvez se eu pegar nisto "Data Source=VMWARESERVER;Initial Catalog=MercoFarma;Persist Security Info=True;Us" e transforma-lo em qq coisa como isto

Public server as string

Data Source=" & server  &";Initial Catalog=MercoFarma;Persist Security Info=True;Us

deveria dar, mas tenho um erro que diz que o "server" tem de ser uma constante.... :P

Tentei tb outro metodo que era alterar My.Settings.MercoFarmaConnectionString mas esta propriedade é read only....

Portanto posto isto alguem conhece alguma maneira de conseguir usar uma variavel no "DataSource=" ?

Espero ter me feito enteder, já tou mais que arrependido de ter usado o DataSource do VB devia era ter feito tudo à pata.....  :rant_01:

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Então e se para isto:

Data Source=" & server  &";Initial Catalog=MercoFarma;Persist Security Info=True;Us

fizeres uma concatnação antes, não dá?

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Não pq era o que tava a dizer ele dá-me erro no "server" pq este tem de ser uma constante, vê a screenshot:

erro7fi.th.jpg

N percebi mto bem o que queres dizer com concatenação....

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

faz um teste:

mete:

variavel= "Data Source=VMWARESERVER;Initial Catalog=MercoFarma;Persist Security Info=True;Us"

e depois usa a variavel no sitio do texto, ou seja, usa só uma variavel com o conteudo todo junto pra ver o que 'ele diz'.

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Diz a mesma coisa "constant String is required"

Só dá se fizer isto:    Public Const conString = "Data Source=VMWARESERVER;Initial Catalog=MercoFarma;Persist Security Info=True;Us" & _

                "er ID=admin;Password=admin"

e depois puser lá o conString, ainda tentei Public Const conString = "Data Source=" & server & ";Initial Catalog=MercoFarma;Persist Security Info=True;Us" & _

                "er ID=admin;Password=admin"

mas como era de esperar uma constante n pode conter variaveis....

Ainda tou um bocado às "apalpadelas" no VB 2005 descobri que aquele bocado do codigo da para ser mudado atravez desta opção erro6kd.th.jpg mas n consigo perceber como posso por uma variavel no campo "server name"....

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Bem de qualquer modo já descobri como mudar o nome do server sem ter de estar a apagar tudo... esse era o meu maior medo que só desse para mudar insrindo um novo datasource, este proj é para a prova de aptidão profissional do curso que tou a tirar, e na apresentação se eles me perguntarem como faria para mudar o nome do server já sei, tenho é de compilar tudo outra vez....

Melhor era mesmo o utilizador poder mudar sem a minha intervenção, mas já tou a ver que isso n vai dar para fazer.... :P

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

pois na sei,... deixa lá ver o que dizem os gajos realmente entendidos no assunto (que não é o meu caso) LOL

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Obrigado na mesma pelo esforço d_pintassilgo  :P

Se alguem souber algum workarround para isto, que poste aqui :P

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Eu nunca mexi em VB puro, mas se for uma aplicação WEB, e se tiver web config, grava isso no web.config, e colocas todas as strings a ler do web.config.

qd tiveres de alterar isso alteras só no web.config

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Mas espera lá...

Tu dizes que a variavel server tem de ser alterada facilmente, mas... como assim?

Nos projectos WEB com VB, existem ficheiros de blabla.config.

Em vb.net tb existem?

Podes dar uma ordem ao teu "mysettings" para ler a conexão desse blabla.congig. Depois crias um aplicativo que te altere esse blabla.config.

Para a web eu faço isso. O meu web.config lê a conexão de outros files.config e depois faço páginas para alterar os textos dos files.config, que não são nada mais nada menos que ficheiros "xml"

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Crie uma conta ou ligue-se para comentar

Só membros podem comentar

Criar nova conta

Registe para ter uma conta na nossa comunidade. É fácil!


Registar nova conta

Entra

Já tem conta? Inicie sessão aqui.


Entrar Agora