Jump to content
FabioGuerreiro

Como ir buscar um ID da Base de dados

Recommended Posts

FabioGuerreiro

Boa Noite, no meu projecto preciso de registar o aluno que vai requisitar um livro a uma biblioteca, mas para isso preciso de saber o Id desse aluno como é que faço isso?

Share this post


Link to post
Share on other sites
Caça

Que base de dados é que estás a utilizar?


Pedro Martins

Não respondo a duvidas por PM

Share this post


Link to post
Share on other sites
FabioGuerreiro

Que base de dados é que estás a utilizar?

acess (.mdb)

Queria utilizar um codigo parecido, mas que fosse buscar o ID

 Try
            Dim connString As String = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & My.Application.Info.DirectoryPath & "\BDbiblioteca.mdb;"
            Dim SQL As String = "INSERT INTO Aluno ([Nome],[Turma],Idade,Ano) VALUES (?,?,?,?)"


            ' Inicia uma ligação à base 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("Nome", OleDbType.VarChar).Value = Naluno
                command.Parameters.Add("Turma", OleDbType.VarChar).Value = Taluno
                command.Parameters.Add("Idade", OleDbType.Integer).Value = Ialuno
                command.Parameters.Add("Ano", OleDbType.Integer).Value = Aaluno
                ' 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
        Catch ex As Exception
            MessageBox.Show(ex.Message, My.Application.Info.Title, MessageBoxButtons.OK, MessageBoxIcon.Error)

        End Try

Share this post


Link to post
Share on other sites
Caça

O código é parecido com esse.

Só precisas de usar um DataAdapter ou um DataReader para ir buscar os dados.


Pedro Martins

Não respondo a duvidas por PM

Share this post


Link to post
Share on other sites
Caça

Existem montes de exemplos espalhados pelo fórum, é só fazer uma pesquisa :)

Tens aqui um exemplo

        Dim Dt As New DataTable 'DataTable onde vão ser carregados os dados
        Dim Da As New OleDb.OleDbDataAdapter 'DataAdapter para ir buscar os dados
        Dim Cm As New OleDb.OleDbCommand 'Command para parametrizar a Query
        Cm.CommandText = "Query SQL"
        Using Cn As New OleDb.OleDbConnection("Provider")
            Cm.Connection = Cn
            Cn.Open()
            Da.SelectCommand = Cm
            Da.Fill(Dt) 'Aqui preenche o DataTable
            Cn.Close()
        End Using
        'Aqui precore o DataTable, linha a linha
        For Each dr As DataRow In Dt.Rows
            MsgBox(dr(0))
        Next


Pedro Martins

Não respondo a duvidas por PM

Share this post


Link to post
Share on other sites
jpaulino

Faz assim ... altera a query para:

Dim SQL As String = "SELECT id FROM Aluno WHERE [Nome]=?,[Turma]=?"

Define os parameters para o nome e a turma e no final faz um ExecuteScalar() em vez de um ExecuteNonQuery(). A variável x ficará com o número do aluno (caso encontre)

Share this post


Link to post
Share on other sites
Caça

Se for só para ir buscar um valor faz como o jpaulino te disse :)


Pedro Martins

Não respondo a duvidas por PM

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.