CRIANDO DATASET DINAMICO
Olá. Possuo um formulário em vb.net que ao carregar lista tds as tabelas do banco em uma cboTabela. e carrega os campos em textboxes.
O que eu quero é ao selecionar a tabela na combo, ele carregar os dados dessa tabela nas textboxes. Atualmente ele esta carregando apenas os registros da primeira tabela por mais q eu mude la na combo. O sql esta de acordo com a seleção assim:
strSql = [Ô]SELECT * From [Ô] + cboTabela.Text
[ô]cria um novo daAdapter para a conexao
da = New OleDbDataAdapter(strSQL, cn)
[ô]preenche o dataset - ds
da.Fill(ds, cboTabela.Text)
Dim dt As New DataTable
dt = ds.Tables(cboTabela.Text)
txtLicao.Text = ds.Tables(0).Rows(i)([Ô]nome[Ô]).ToString()
o que posso fazer para que ele [Ô]destrua[Ô] dataset anterior e carregue o novo dataset ?
Grato
O que eu quero é ao selecionar a tabela na combo, ele carregar os dados dessa tabela nas textboxes. Atualmente ele esta carregando apenas os registros da primeira tabela por mais q eu mude la na combo. O sql esta de acordo com a seleção assim:
strSql = [Ô]SELECT * From [Ô] + cboTabela.Text
[ô]cria um novo daAdapter para a conexao
da = New OleDbDataAdapter(strSQL, cn)
[ô]preenche o dataset - ds
da.Fill(ds, cboTabela.Text)
Dim dt As New DataTable
dt = ds.Tables(cboTabela.Text)
txtLicao.Text = ds.Tables(0).Rows(i)([Ô]nome[Ô]).ToString()
o que posso fazer para que ele [Ô]destrua[Ô] dataset anterior e carregue o novo dataset ?
Grato
Eu aconselho você a jogar num datagridview .
Pois você já usa dataset e datatable
Era só adicionar essa linha para usar o datagridview
NomeDatagridview.datasource=dt
ADHEL, nao kero so mostrar os dados mas tbem edita-los e ainda acrescentar mais resgitros axo q fika invivell por datagrid. sao 12 campos.
Entao faz assim
sql=select * from sua tabela
cmd= New oledCommand(sql, Cnn)
Dim leitor As OledblDataReader = Cmd.ExecuteReader
If leitor.Read = True Then
txtBairro.Text = leitor.Item([Ô]bairro[Ô]).ToString
txtCidade.Text = leitor.Item([Ô]cidade[Ô]).ToString
End If
leitor.Close()
leitor.Dispose()
pego o bairro e a cidade e jogo nos textboxs correspondentes
sql=select * from sua tabela
cmd= New oledCommand(sql, Cnn)
Dim leitor As OledblDataReader = Cmd.ExecuteReader
If leitor.Read = True Then
txtBairro.Text = leitor.Item([Ô]bairro[Ô]).ToString
txtCidade.Text = leitor.Item([Ô]cidade[Ô]).ToString
End If
leitor.Close()
leitor.Dispose()
pego o bairro e a cidade e jogo nos textboxs correspondentes
Funcionou mas tem um porem.. possuo botao q que avança e retona com os dados. Tipo Avançar e Retornar.. como faço isso nesse exemplo?
Citação:ADHEL, nao kero so mostrar os dados mas tbem edita-los e ainda acrescentar mais resgitros axo q fika invivell por datagrid. sao 12 campos.
O Datagrid, vai lhe dar essas condições.
[ô]Pesquisar pela tabela expecifica
Public Function RetornaDados(ByVal strTabela As String) As DataTable
Dim dt As New DataTable
Dim cmd As New oledbCommand([Ô]SELECT * FROM [Ô] & strTabela, cn)
Try
dt.Load(cmd.ExecuteReader())
Return dt
Catch ex As Exception
dt = Nothing
Return dt
End Try
End Function
Para chamar a função faça assim
Dim dtRetorno As New DataTable
dtRetorno = RetornaDados(ComboBox1.SelectedText)
O dtRetorno vai conter todos os dados referente a tabela passada por parametro
Caso não dê certo poste o código que esta utilizando para carregar o ComboBox
Tópico encerrado , respostas não são mais permitidas