SOMAR VALORES NO BANCO DE DADOS

 Tópico anterior Próximo tópico Novo tópico

SOMAR VALORES NO BANCO DE DADOS

VB.NET

 Compartilhe  Compartilhe  Compartilhe
#493894 - 22/05/2020 11:53:32

JVOFICIAL
ITAPETINGA
Cadast. em:Março/2017


Olá, pessoal!
Preciso da ajuda de vocês no seguinte:
Estou fazendo um projeto e nele preciso realizar a seguinte função:

O Meu ComboBox está vinculado com a coluna Produtos do meu DB access;
Quando escolho um item no meu ComboBox ele me da o valor do item coluna Quantidade que está vinculado com o Produto no meu TextEdit;
Eu quero fazer com que o valor desse TextEdit seja somado, ou diminuido com o valor de um outro TextEdit e que o resultado seja salvo no DB, no local da quantidade.

Por exemplo:
Escolho Carro no ComboBox
no TextEdit vem a quandidade de 40 Carros que tenho no meu DB access
Quero tirar 20 Carros e fazer com que esse resultado seja alterado diretamente no DB access.
Como posso fazer?
Desde já, muito obrigado!



Resposta escolhida #493905 - 23/05/2020 05:26:05

PEGUDO
RIO DE JANEIRO
Cadast. em:Março/2009


Última edição em 26/05/2020 08:19:26 por PEGUDO

Se o novo valor estiver na TextEdit e supondo que a coluna Quantidade é do tipo Número:
Dim sql As String = UPDATE nome_tabela SET Quantidade = " & CInt(TextEdit.Text.Trim) " WHERE Produtos = '" & ComboBox.SelectedItem.Text & "'"

ou
Dim sql AS String = String.Format("UPDATE nome_tabela SET Quantidade = {0} WHERE Produtos = '{1}', TextEdit.Text.Trim, ComboBox.SelectedItem.Text)



"Às vezes, para poder andar pra frente, o homem deve deixar tudo para trás"

#493955 - 27/05/2020 08:02:23

JVOFICIAL
ITAPETINGA
Cadast. em:Março/2017


Citação:
:
Se o novo valor estiver na TextEdit e supondo que a coluna Quantidade é do tipo Número:
Dim sql As String = UPDATE nome_tabela SET Quantidade = " & CInt(TextEdit.Text.Trim) " WHERE Produtos = '" & ComboBox.SelectedItem.Text & "'"

ou
Dim sql AS String = String.Format("UPDATE nome_tabela SET Quantidade = {0} WHERE Produtos = '{1}', TextEdit.Text.Trim, ComboBox.SelectedItem.Text)


Meu amigo, não consegui utilizar este código, vc poderia me ensinar com mais detalhes como eu introduzo ele?



#493960 - 27/05/2020 11:23:41

OMAR2011
MONTES CLAROS
Cadast. em:Setembro/2011


O que ele esta tentando é mostrar como se faz.
Faça uma pequena mudança e vai obter resultado.
Caso não consiga vou mostra se não aparecer alguém.



#493962 - 27/05/2020 13:14:26

PEGUDO
RIO DE JANEIRO
Cadast. em:Março/2009


Última edição em 27/05/2020 13:18:13 por PEGUDO

Cara... a primeira pergunta é: Você está utilizando o Data Source do Visual Studio ou está fazendo na Munheca?
Eu te dei um exemplo de como fazer na munheca.
Precisamos saber se você tem familiaridade com programação com banco de dados.

O exemplo de conexão abaixo diz para abrir um banco ACCESS que está no mesmo diretório do executável do programa e, logo abaixo, a Sub para desconectar

''' <summary>
''' Conecta o usuário no sistema
''' </summary>
''' <param name="pCon">Objeto OleDbConnection</param>
''' <remarks></remarks>

Public Sub conectar(ByVal pCon As OleDbConnection)
    If pCon.State = ConnectionState.Closed Then
        pCon.ConnectionString = "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=" & Application.StartupPath & "\store.accdb"
        pCon.Open()
    End If
End Sub

''' <summary>
''' Desconecta o atual usuário do access
''' </summary>
''' <param name="pCon">Objeto OleDbConnection</param>
''' <remarks></remarks>

Public Sub desconectar(ByVal pCon As OleDbConnection)
    If pCon.State = ConnectionState.Open Then
        pCon.Close()
    End If
End Sub


Supondo que você fez o Imports System.Data.OleDb

Dim con As New connection
Dim comando As OleDbCommand = Nothing
Dim sql AS String = String.Format("UPDATE nome_tabela SET Quantidade = {0} WHERE Produtos = '{1}', TextEdit.Text.Trim, ComboBox.SelectedItem.Text)

Try
    conectar(con)
    comando = New OleDbCommand(sql,con)
    comando.ExecuteNonQuery()
Catch ex As Exception
    MesgBox(ex.Message)
Finally
    If Not IsNothing(comando) Then Comando.Dispose()
    desconectar(con)
End Try


Assim... Se você estiver trabalhando com o Data Source do Visual Studio a abordagem é diferente e confesso que só utilizei isso há milênios atrás quando Visual Studio 2005 surgiu e nem lembro mais como se trabalha com ele.
Agora, se você não sabe nada, nada mesmo, aconselho dedicar um tempo para o estudo.
Aconselho dar uma olhada nesta playlist:
SISTEMA DE ESTOQUE COM VB E SQL
Trabalha com SQL e vai te dar um horizonte melhor do que simplesmente respostas para seus códigos.

Espero ter ajudado.


"Às vezes, para poder andar pra frente, o homem deve deixar tudo para trás"

#493978 - 28/05/2020 16:08:06

JVOFICIAL
ITAPETINGA
Cadast. em:Março/2017


Citação:
:
Cara... a primeira pergunta é: Você está utilizando o Data Source do Visual Studio ou está fazendo na Munheca?
Eu te dei um exemplo de como fazer na munheca.
Precisamos saber se você tem familiaridade com programação com banco de dados.

O exemplo de conexão abaixo diz para abrir um banco ACCESS que está no mesmo diretório do executável do programa e, logo abaixo, a Sub para desconectar

''' <summary>
''' Conecta o usuário no sistema
''' </summary>
''' <param name="pCon">Objeto OleDbConnection</param>
''' <remarks></remarks>

Public Sub conectar(ByVal pCon As OleDbConnection)
    If pCon.State = ConnectionState.Closed Then
        pCon.ConnectionString = "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=" & Application.StartupPath & "store.accdb"
        pCon.Open()
    End If
End Sub

''' <summary>
''' Desconecta o atual usuário do access
''' </summary>
''' <param name="pCon">Objeto OleDbConnection</param>
''' <remarks></remarks>

Public Sub desconectar(ByVal pCon As OleDbConnection)
    If pCon.State = ConnectionState.Open Then
        pCon.Close()
    End If
End Sub


Supondo que você fez o Imports System.Data.OleDb

Dim con As New connection
Dim comando As OleDbCommand = Nothing
Dim sql AS String = String.Format("UPDATE nome_tabela SET Quantidade = {0} WHERE Produtos = '{1}', TextEdit.Text.Trim, ComboBox.SelectedItem.Text)

Try
    conectar(con)
    comando = New OleDbCommand(sql,con)
    comando.ExecuteNonQuery()
Catch ex As Exception
    MesgBox(ex.Message)
Finally
    If Not IsNothing(comando) Then Comando.Dispose()
    desconectar(con)
End Try


Assim... Se você estiver trabalhando com o Data Source do Visual Studio a abordagem é diferente e confesso que só utilizei isso há milênios atrás quando Visual Studio 2005 surgiu e nem lembro mais como se trabalha com ele.
Agora, se você não sabe nada, nada mesmo, aconselho dedicar um tempo para o estudo.
Aconselho dar uma olhada nesta playlist:
SISTEMA DE ESTOQUE COM VB E SQL
Trabalha com SQL e vai te dar um horizonte melhor do que simplesmente respostas para seus códigos.

Espero ter ajudado.

Amigo, eu estava estruturando semelhante a esse seu exemplo ai, e sua primeira resposta me ajudou e eu consegui tirar como base e deu certo, muito obrigado!!!



 Tópico anterior Próximo tópico Novo tópico


Tópico encerrado, respostas não sao permitidas
Encerrado por JVOFICIAL em 28/05/2020 16:08:25