Jump to content

Ligação a base de dados


MACHINE
 Share

Recommended Posts

Boas

Estou a fazer um projecto em VB(com base de dados Access) com ligação por código,e gostava de saber como  é que chamo um campo da base de dados para uma label ,ou seja,por exemplo tenho uma tabela cliente com o último registo com o nome"abc" e gostava que me mostrasse no VB numa label esse campo.

Aqui fica os campos da minha tabela(Cliente)

ID(PK)

nome

apelido

Desde já o meu obrigado pela vossa atenção.

Link to comment
Share on other sites

Bem, vou postar como geralmente utilizo. Pelo visto vc precisa só das atribuições, então:

'Declara variáveis de acesso
Dim seuDataBase As Database, suaTabela As Recordset

'Direciona para o arquivo - senha opcional
Set seuDataBase = Workspaces(0).OpenDatabase("dir_e_arquivo.mdb",False, False, "MS Access; PWD=" & senha)

'Direciona para tabela
Set suaTabela = DB_EP.OpenRecordset("cliente", dbOpenTable)

'Numero de registros
nrecord = suaTabela.RecordCount

'Vai ao primeiro registro - um dos comandos - depois vc brinca
suaTabela.MoveFirst

'Vai ao último registro
suaTabela.MoveLast

'Atribuí 
Label1 = suaTabela("ID")
Label2 = suaTabela("nome")
Label3 = suaTabela("apelido")

'Fecha tabela e database
suaTabela.Close
seuDataBase.Close

ABS!JRS!

Link to comment
Share on other sites

Desde já obrigado pelo código,mas está me a dar alguns erros.

Eu tenho a ligacao á base de dados(Access) por código.

Ou seja tenho dois modulos(ligacao_bd e ligacao_2)

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

ligacao_bd

Public Const CAMINHO = "C:\Database1.accdb"
    Public Sub LIGACAO() REM procedimento de ligacao,Criar um objecto Oledbdatadapter e ligar a tabela da base de dados
        configuracao_ligacao = "Provider=Microsoft.ace.OLEDB.12.0;Data source=provider=Microsoft.ace.OLEDB.12.0;data source =" & CAMINHO
        minhaligacao.ConnectionString = configuracao_ligacao
    End Sub[/b]

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

ligacao_2

Public Sub ligar_bd()
        ligacaobd.LIGACAO()
        ligacaobd.objconnection = New OleDbConnection(ligacaobd.configuracao_ligacao)
        ligacaobd.objconnection.Open()
    End Sub[/b]

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

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

Eu só queria mesmo era mostrar numa label o último campo da tabela cliente.

Desde já o meu obrigado

Link to comment
Share on other sites

Desde já obrigado pelo código,mas está me a dar alguns erros.

Eu tenho a ligacao á base de dados(Access) por código.

Ou seja tenho dois modulos(ligacao_bd e ligacao_2)

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

ligacao_bd

Public Const CAMINHO = "C:\Database1.accdb"
    Public Sub LIGACAO() REM procedimento de ligacao,Criar um objecto Oledbdatadapter e ligar a tabela da base de dados
        configuracao_ligacao = "Provider=Microsoft.ace.OLEDB.12.0;Data source=provider=Microsoft.ace.OLEDB.12.0;data source =" & CAMINHO
        minhaligacao.ConnectionString = configuracao_ligacao
    End Sub[/b]

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

ligacao_2

Public Sub ligar_bd()
        ligacaobd.LIGACAO()
        ligacaobd.objconnection = New OleDbConnection(ligacaobd.configuracao_ligacao)
        ligacaobd.objconnection.Open()
    End Sub[/b]

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

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

Eu só queria mesmo era mostrar numa label o último campo da tabela cliente.

Desde já o meu obrigado

Nao sei se o que queres e alguma coisa parecida a isto.

aquilo que eu faria para buscar o ultimo valor da tabela clientes seria

dim sqltext as string
dim adaptador As New OleDbDataAdapter
dim comando As New OleDbCommand
depois faria
ligacao.open
sqltext="select count(Nome da coluna da chave primaria de preferencia) from clientes"
comando.commandtext=sqltext
comando.connection=ligacao
"umavariavel"=comando.executescalar
ligacao.close
sqltext="select * from clientes"' isto copia tudo da tabela clientes

adaptador = New OleDbDataAdapter(sqltext, ligacao)
adaptador.Fill(cliente, "Cliente")'  

'agora ja tens os teus dados da tabela numa tabela do vb

'agora vais igualar a label a variavel no meu caso umavariavel

'tipo isto

lbl_qualquercoisa= cliente.Tables("Cliente").Rows(umavariavel).Item(0) ' aqui no item dependo o que queres por exemplo se tens 3 coluna na tabela clientes se quiseres a primeira e o 'item(0),item(1),sucessivamente

era isso que querias?

se quiseres colocar os tres campos numa label ai teras que fazer qualquer coisa do tipo

lbl_qualquercoisa.text=cliente.Tables("Cliente").Rows(umavariavel).Item(0) & "," & cliente.Tables("Cliente").Rows(umavariavel).Item(1) &"," & cliente.Tables("Cliente").Rows(umavariavel).Item(2)

Link to comment
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
 Share

×
×
  • 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.