Pesquisar na Comunidade
Mostrando resultados para as tags ''Duvida erro banco de dados''.
Encontrado 1 registro
-
Bom dia. Estou com uma duvida muito incomodativa, sobre banco de dados access. La vai. Estou desenvolvendo um programinha que faz cadastros das informações das rodas, com o banco de dados access. chamei o banco de dados desta maneira: Imports System.Data Imports System.Data.OleDb Module db Public Function GetConnection() As OleDbConnection Dim sql As String = "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=C:\Users\adonias\Desktop\teste\teste.accdb" Return New OleDbConnection(sql) End Function End Module até ai ok. criei a pagina de cadastro com os seguintes campos de teste: txtnome.text txtnumero.text e abri o seguinte codigo na pagina: Imports System.Data Imports System.Data.OleDb Public Class Form1 Private Sub gravar() Using con As OleDbConnection = GetConnection() Try con.Open() Dim sql As String = "insert into teste (nome,numero) values(?,?)" Dim cmd As OleDbCommand = New OleDbCommand(sql, con) cmd.Parameters.Add(New OleDb.OleDbParameter("@nome", txtnome.Text)) cmd.Parameters.Add(New OleDb.OleDbParameter("@numero", txtnumero.Text)) txtnome.Text = "" txtnumero.Text = "" cmd.ExecuteNonQuery() MsgBox("Salvo com Sucesso", MsgBoxStyle.Information) Catch ex As Exception MsgBox(ex.Message) Finally con.Close() End Try End Using End Sub Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load End Sub Private Sub btmsalvar_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btmsalvar.Click gravar() End Sub Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btminfor.Click Form2.Show() End Sub End Class até ai tudo bem novamente, consigo cadastrar vai para o banco de dados, esta tudo correto. Depois criei mais uma pagina de consulta, com os seguintes campos datagridview, btnvisualizar, txtnome, txtnumero. fiz desta maneira porque vai aparecer no datagrid as informaçoes do banco de dados, ao selecionar a informação abrir pressionando o botao visualizar, que vai aparecer nos campos txtnome e txtnumero, codigo usado: Imports System.Data Imports System.Data.OleDb Public Class Form2 Private Sub carregar() Using con As OleDbConnection = GetConnection() Try con.Open() Dim sql As String = "select nome from teste" Dim cmd As OleDbCommand = New OleDbCommand(sql, con) Dim da As OleDbDataAdapter = New OleDbDataAdapter(cmd) Dim dt As DataTable = New DataTable da.Fill(dt) dgr.DataSource = dt Catch ex As Exception Finally con.Close() End Try End Using End Sub Private Sub Form2_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load carregar() End Sub Private Sub data() Dim dr As OleDbDataReader = Nothing Using con As OleDbConnection = GetConnection() Try con.Open() Dim sql As String = "select nome,numero from teste where nome" & dgr.CurrentRow().Cells(0).Value() Dim cmd As OleDbCommand = New OleDbCommand(sql, con) dr = cmd.ExecuteReader(CommandBehavior.SingleRow) If dr.HasRows Then dr.Read() End If txtnome.Text = dr.Item("nome") txtnumero.Text = dr.Item("numero") Catch ex As Exception MsgBox(ex.Message) Finally con.Close() dr.Close() End Try End Using End Sub Private Sub btmv_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btmv.Click data() End Sub End Class Porem da erro gostaria de saber o porque? o erro que da é este: Erro:{"Object reference not set to an instance of an object."} e no programa marca a seguinte linha de codigo: dr.Close() em amarelo Obrigado e precisando muito desta força. admpatiosantos@gmail.com marco antonio