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

Trrocha

[Resolvido]-Ligação Base Dados - VB

8 mensagens neste tópico

Boas.

Estou a fazer um projecto de final de ano e a coisa está a ficar para o torto

O que pensava que poderia ser uma coisa facil está cada vez mais complicado.

A ideia é de fazer uma expecie de software que servisse de maquina registadora.

A complicação surge ao fazer um botão que vai a uma base de dados buscar um valor.

Neste caso o custo de um tratamento.

Esse botao iria enviar o preço do produto para uma txtbox.

este é o excerto de código que tenho e que não me está a correr.

podias ajudar-me sfv?

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

Private Sub btnCrteM_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnCrteM.Click
Dim comando As String
comando = "SELECT preco tipo_trabalho FROM(trabalhos_tratamentos)WHERE(tipo_trabalho = '[busso]')"
'construção da classe sqlcommand
'Dim preco As String
Dim cmd As New SqlCommand(comando, db)
Dim dr As SqlDataReader 'declaraçao da classe sqldatareader
dr = cmd.ExecuteReader 'obtenção de dados

'carregamento de dados

txtNumero.Text = dr.Item("'[busso]'")

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

O erro ocorre me no "dr = cmd.ExecuteReader" e diz erro de sintax.

Ja tentei outras formas, mas dando sempre erros, a dizer que uma string nao pode ser convertida para integer.

Cumprimentos

Obrigado

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

O comando SQL não está correcto ... falta-te pelo menos uma vírgula e retira os parênteses rectos.

comando = "SELECT preco, tipo_trabalho FROM(trabalhos_tratamentos) WHERE (tipo_trabalho = 'busso')"

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

O comando SQL não está correcto ... falta-te pelo menos uma vírgula e retira os parênteses rectos.

comando = "SELECT preco, tipo_trabalho FROM(trabalhos_tratamentos) WHERE (tipo_trabalho = 'busso')"

O erro aparentemente não é do comando SQL. Creio que seja no comando para obter os dados, pois o erro ocorre-me sempre lá. Mas eu tambem ainda nao tenho muito expriencia em programação, apesar de estar a tirar um curto de programação e gestão de sistemas informáticos.

Obrigadinho mais uma vez =)

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

claro que te ocorre sempre lá... porque ele nunca consegue ler... por isso experimenta como o "mestre" diz ;-)

Além do mais..quando se está a aprender ( e não só)...é bom ir eliminando os possíveis erros, mesmo que não seja... ficas a saber que esse tipo de sintaxe não é comum em consultas.

Qualquer coisa mais diz.

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

é vai por ele!!!

xD

já me deu uma boas ajudas!!!  :D

és TGPSI???

xD

pelo que vi, ainda que não sou muito entendido neste tipo de matéria também, pareceu-me que o erro é esse...

CUMPS

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Boas. Ja consegui resolver o problema =D

Depois de muitas horas a pensar no que iria fazer consegui correr o que queria, apesar de ser uma coisa "básica" para muitos de vocês, mas para mim é um bom passo.

Obrigado pelos concelhos pessoal.

Aí esta o codigo alterado:

Private Sub btnCrteM_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnCrteM.Click
        
        Dim comando As String
        comando = "SELECT preco FROM trabalhos WHERE tipo_trabalho='busso'"

        Dim cmd As New SqlCommand(comando, db)
        Dim dr As SqlDataReader  'declaraçao da classe sqldatareader
        dr = cmd.ExecuteReader 'obtenção de dados
        dr.Read()
        txtNumero.Text = dr.Item("preco")


    End Sub

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