Jump to content
zei

Adicionar valor na base de dados

Recommended Posts

zei

Alguém me poderia explicar como poderia fazer:

Tenho um valor na combobox, e tenho vários na listbox

e eu queria adicionar os valores da listbox na base de dados dependendo do valor na combobox

por ex:

Combobox = 1 se meter Combobox = 2 ja tem outros valores na listbox.

Listbox

ICE TEA

GELADO

ENTRADAS

Espero resposta

Share this post


Link to post
Share on other sites
bioshock

Eu também esperei 9 meses para nascer. :(

Percorres os items da listbox e adicionas-os à bd.

Share this post


Link to post
Share on other sites
zei

Eu também esperei 9 meses para nascer. :(

Percorres os items da listbox e adicionas-os à bd.

?? -.-'

Nasci antes do tempo! :/

Pois isso sei eu, mas isso tem de depender do valor da combobox

Share this post


Link to post
Share on other sites
Weasel

Se não dá para mais, coloquem o problema em português...

Se combobox = Valor1 Então

Adiciono à bd ValorA 1, ValorA2 e ValorA3

Senão se combobox = Valor 2 Então

...

...

Depois traduzes o teu problema para inglês (a tua linguagem de programação) e terás (quase) a tua resposta.

Vá lá puxem pela cabeça um bocadinho...


Knowledge to the masses


Share this post


Link to post
Share on other sites
zei

Obrigado ja meto aqui o que tentei

Nao pedi para por o codigo, mas sim para ajudarem um pouco com o raciocínio.

Share this post


Link to post
Share on other sites
zei

To agr a reparar k tenho de pesquisar o id produto do produto na base de dados para inserir valor dentro do for e dentro do if

tome a ver a rasca para fazer isso.

ja tenho isto

    Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click
        Dim cdac As Integer
        Dim strtext2 As String
        Dim cmd123 As String

        TextBox2.Text = ListBox2.Text.ToCharArray
        strtext2 = TextBox2.Text
        ListBox3.Items.Add(strtext2)



        If MesaComboBox.Text = "1" Then

            Try
                Dim connString As String = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & My.Application.Info.DirectoryPath & "\restaurante.mdb;"
                Dim txtlol As Char

                For i = 0 To ListBox3.ItemHeight 'nao sei como fazer

                    txtlol.text = ListBox3.SelectedItems(i) ' nao funciona

                    Dim SQL As String = "INSERT INTO Pedido (id_produto) VALUES ('" & txtlol.text & "')"
                    ' Inicia uma ligação à bse de dados
                    Using connection As New OleDbConnection(connString)

                        ' Define o comando e os parâmetros
                        Dim command As New OleDbCommand(SQL, connection)
                        command.Parameters.Add("id_produto", OleDbType.Integer).Value = nao sei q fazer
                        command.Parameters.Add("id_mesa", OleDbType.Integer).Value = 1

                        ' Abre a ligação e insere o registo
                        connection.Open()
                        Dim x As Integer = command.ExecuteNonQuery()
                        If x <> 1 Then
                            Throw New ArgumentException("Não foi possível inserir o registo na base de dados!")
                        End If
                    End Using
                Next i
            Catch ex As Exception
                MessageBox.Show(ex.Message, My.Application.Info.Title, MessageBoxButtons.OK, MessageBoxIcon.Error)

            End Try
        End If

    End Sub

Share this post


Link to post
Share on other sites
Caça

command.Parameters.Add("id_produto", OleDbType.Integer).Value = nao sei q fazer
command.Parameters.Add("id_mesa", OleDbType.Integer).Value = 1

Estás a adicionar dois parâmetros quando a tua query não tem nenhum :(

Em vez de

ListBox3.ItemHeight

experimenta

ListBox3.SelectedItems.Count


Pedro Martins

Não respondo a duvidas por PM

Share this post


Link to post
Share on other sites
zei

command.Parameters.Add("id_produto", OleDbType.Integer).Value = nao sei q fazer
command.Parameters.Add("id_mesa", OleDbType.Integer).Value = 1

Estás a adicionar dois parâmetros quando a tua query não tem nenhum :D

nao percebi!  :(

Share this post


Link to post
Share on other sites
Caça

Dim SQL As String = "INSERT INTO Pedido (id_produto) VALUES ('" & txtlol.text & "')"

Não estás a definir nenhum parâmetro, ou continuas com a query e não adicionas parâmetros ou modificas a query para poderes usar parâmetros

Dim SQL As String = "INSERT INTO Pedido (id_produto) VALUES (@id_produto)"
'...
'e adicionas apenas um parâmetro
command.Parameters.Add("@id_produto", OleDbType.Integer).Value = ID do Produto


Pedro Martins

Não respondo a duvidas por PM

Share this post


Link to post
Share on other sites
zei

estou a tentar fazer isso pesquisar o id_produto para adicionar o produto a mesa em questao, mas tou confuso no codigo

Dim strname As String = UCase(RestauranteDataSet.Tables("Produto").Rows(i).Item("id_produto"))

supostamente o que faz isto?

Share this post


Link to post
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.