Jump to content
Chamuanza

O que Falta no Select

Recommended Posts

Chamuanza

Bem aja pessoal

O que falta neste select para funcionar.

A linha referente ao select não aparece na grid, embora active a mesma

Obrigado

Dim conn As New OleDbConnection()
        conn.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=D:\AgendaAnosVB6\AgendaAnosNova\AgendaAnos.mdb"
        Dim ds As New DataSet
        Dim cmd As OleDbCommand = conn.CreateCommand
        Dim DataMes As Date = Today

        cmd.CommandText = "Select Nome, Sobrenome, Endereco, Nascimento " & _
                         "From Amigos " & _
                         "Where Nome = 'Maria'"

        conn.Open()

        Dim leitor As OleDbDataReader = cmd.ExecuteReader()


        Try
            ds = New DataSet("Amigos")
            AmigosDataGridView.DataSource = ds.Tables("Amigos")

            leitor.Close()
            conn.Close()

        Catch erro As Exception
            MsgBox("Erro " & vbCrLf & erro.ToString, MsgBoxStyle.Critical, "Erro")
        End Try

Share this post


Link to post
Share on other sites
bruno1234

Estás aí a misturar DataReader com DataSet.

Só vais usar um dos 2.

Se optares por DataReader fazes assim:

http://www.startvbdotnet.com/ado/sqlserver.aspx

Se escolheres DataSet:

http://www.exforsys.com/tutorials/vb.net-2005/access-and-manipulate-data-using-datasets.html

Uma observação: No controlo de excepções acrescenta um finally com um Close á ligação da BD, para garantires que é sempre fechada.


Matraquilhos para Android.

Gratuito na Play Store.

https://play.google.com/store/apps/details?id=pt.bca.matraquilhos

Share this post


Link to post
Share on other sites
Chamuanza

Obrigado pela atenção bruno1234

Aos exemplos que me deste fui buscar o codigo abaixo descrito, penso que seja isto, mas como passo os dados para a grid?

 Dim cn As OleDbConnection
        Dim cmd As OleDbCommand
        Dim dr As OleDbDataReader


        Try

            cn = New OleDbConnection("Provider=Microsoft.Jet.OLEDB.4.0;Data Source=D:\AgendaAnosVB6\AgendaAnosNova\AgendaAnos.mdb")
            'provider to be used when working with access database

            cn.Open()
            cmd = New OleDbCommand("Select Nome, Sobrenome, Endereco, Nascimento " & _
                             "From Amigos " & _
                             "Where Nome = 'Maria'", cn)

            dr = cmd.ExecuteReader
            While dr.Read()

                'TextBox1.Text = dr(0)
                'TextBox2.Text = dr(1)
                'TextBox3.Text = dr(2)
                ' loading data into TextBoxes by column index
            End While

            dr.Close()
            cn.Close()

        Catch erro As Exception
            MsgBox("Erro " & vbCrLf & erro.ToString, MsgBoxStyle.Critical, "Erro")
        End Try

Share this post


Link to post
Share on other sites
bruno1234

podes criar uma lista de uma classe conhecida por exemplo.

Troca:

'TextBox1.Text = dr(0)
'TextBox2.Text = dr(1)
TextBox3.Text = dr(2)

por:

MinhaClasse minhaClasse = new MinhaClasse();
minhaClasse.A = dr(0);
minhaClasse.B = dr(1);
minhaClasse.C = dr(2);
lista.Add(minhaClasse);

em que:

- tens uma List<MinhaClasse> lista instanciada.

- A, B e C são Propriedades da MinhaClasse.

Depois mete na GridView:

grid.DataSource = lista;
grid.DataBind();


Matraquilhos para Android.

Gratuito na Play Store.

https://play.google.com/store/apps/details?id=pt.bca.matraquilhos

Share this post


Link to post
Share on other sites
Chamuanza

não entendo a criação de uma lista de uma classe

no form quando abre tenho uma tenho uma "AmigosDataGridView" criada com o wizard

o que pretendo é colocar os dados do select nessa grid

Share this post


Link to post
Share on other sites
bruno1234

Criar uma lista de uma classe é fazer:

List<MinhaClasse> lista = new List<MinhaClasse>();

Isto é a sintaxe em C#, em vb .net n sei, mas n há-de ser mto diferente.

A construção de grids por wizards nunca experimentei, normalmente escrevo o código todo que preciso.


Matraquilhos para Android.

Gratuito na Play Store.

https://play.google.com/store/apps/details?id=pt.bca.matraquilhos

Share this post


Link to post
Share on other sites
Chamuanza

pois é, mas eu sou maçarico nestas andanças e estou a funcionar com VB Net

O select funciona, pois testei introduzindo 4 cx  de texto e atribuindo  TextBox2.Text = dr(1)

TextBox3.Text = dr(2) e sucessivamente, e os dados aparecem, mas como tenho a grid é mais pratico expor os dadosna grid.

Deve haver alguem que consiga dar-me uma dica

Obrigado

Share this post


Link to post
Share on other sites
pmaster

Vê se isto ajuda.

Onde tens

  
ds = New DataSet("Amigos")
AmigosDataGridView.DataSource = ds.Tables("Amigos")

Tenta assim:

AmigosDataGridView.DataSource = ds
AmigosDataGridView.DataMember = "Amigos"

Vendo bem parece me que vai dar ao mesmo.. Espero ter ajudado.

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.