CLR: .Net / Mono / Boo / Otros CLR > VB .NET
Para Los Que Siguen El Maual..
Snaft_J1:
Wenas.
nena, recuerda trabajar los objetos con sus namespace correspondientes.
para no alargartelo mucho mira aki tienes tu code funcional.. y funciona por que yo lo probe jejeje... :whistling:
por ejemplo a mi con solo poner oledbconnection no me sale jejeje, y yo tengo VS.NET 2003 arquitectura empresarial :D .
como minimo debiste anteponerle OleDb.OleDbConnection.
en fin este si funciona.
--- Código: Text --- 'C:\JEM\MBM.mdb ' crear conexion Dim oConexion As New System.Data.OleDb.OleDbConnection oConexion = New System.Data.OleDb.OleDbConnection("Provider=Microsoft.Jet.OLEDB.4.0;Data Source=c:\JEM\MBM.mdb") 'qui no es oledbconnectio si no connection ' crear comando compuesto por varias consultas Dim oComando As New System.Data.OleDb.OleDbCommand("SELECT * FROM Clientes; SELECT * FROM Productos", oConexion) Dim oDataReader As System.Data.OleDb.OleDbDataReader 'ojitos………..aqui me sale el error!!!!!!!!!!!!!!!!!!! oConexion.Open() oDataReader = oComando.ExecuteReader() ' obtener DataReader ' recorrer filas de la primera consulta While oDataReader.Read() 'Me.lstClientes.Items.Add(oDataReader("Nombre")) 'yo no tengo estas tablas val!! End While ' pasar a la siguiente consulta y recorrer ' las filas oDataReader.NextResult() While oDataReader.Read() 'Me.lstProductos.Items.Add(oDataReader("Nombre"))'yo no tengo estas tablas val!! End While oDataReader.Close() oConexion.Close()
solo he probado con otra BD y he antepuesto los namespace, ademas
:devil: si lo que hiciste de este codigo para postearlo en el foro fue un COPY & PASTE, pues lamento decirte que tu CODE esta malo :whistling: :
1 -> por errores de ortografia.
2 -> es posible que la vesion que posees de vb.net sea igual a la mia debes poner como minimo la clase a la que pertenece.
3 -> es posible que esa ruta tan larga no exista.
obviamente creo que es el primero, y el error que mensionas fue perdida de un el lace Hwnd o handle de tu objeto.
Enjoy it!
:D Espero haber sido de ayuda.
eliza_marti:
Hola de nuevo!.. :hola: ..Gracias Serghio..Gracias Sanft_J1.....Mira Serghio hice lo que me dijiste..y me sale el siguiente aviso: " Error al conectar con datos.Se encontraron caracteres después del final de la instrucción SQL. Microsoft Jet Database Engine".. :angry: ....
Sanft_J1..Voy a probar tu código.. ;) ..y despues te cuento..
Gracias a todos por aconsejarme!...les contaré luego como me fue.. ;)
Bye!..suerte!.. :hola: .. :comp:
eliza_marti:
Hola chicos!. :hola: ...este es el resultado de sus consejos.. Serghio!..hice lo que me dijiste.. del Try-End Try……y Snaft_J1 puse los namespace de los objetos correspondientes..Bueno..mejoró un poco..si leen otra vez el code ahora el error es en el objeto del DataReader y no del Connection.. :angry: (Ese es el error que me señala en tiempo de ejecución sin el Try-EndTry)..y…con el Try-EndTry me sigue saliendo el mismo error que les conté anteriormente ..Pero no me crucé de brazos.. :think: .. y comencé a probar diferentes formas y resultó que asignandole solo una tabla al objeto OleDbCommand todo resultó bien.. :think: ..es decir solo una tabla a la vez..!..me parece muy extraño porque se supone que un objeto Command puede estar basado en múltiples sentencias SQL, separadas por el carácter de punto y coma ( ; ), que se ejecuten en lote….lo que quiere decir que esa propiedad a mi no me funciona…
Snaft_J1..tenias razón ..yo tambien tengo VB.net 2003 arquitectura empresarial…aunque lo de la ruta de mi base es la correcta (larga pero correcta) y la n al final de connection fue un error al pasarlo aquí....eso si ..disculpame por escribir mal tu nick…. :D
Gracias por ayudarme!. :yes: .voy a seguir intentandolo…no me quiero quedar con las dudas.. :no:
Bye….. :hola: ..suerte.. :suerte: ..
--- Código: Text ---Imports System.Data.OleDb Public Class Form1Inherits System.Windows.Forms.Form Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load Try ' crear conexion Dim oConexion As New System.Data.OleDb.OleDbConnection("Provider=Microsoft.Jet.OLEDB.4.0;Data Source=C:\Documents and Settings\HOME\Mis documentos\Base_Eli.mdb") ' crear comando compuesto por varias consultas Dim oComando As New System.Data.OleDb.OleDbCommand("SELECT * FROM Clientes;" & "SELECT * FROM Clientes;", oConexion) Dim oDataReader As System.Data.OleDb.OleDbDataReader oConexion.Open() 'Now el error me sale aquí******ojitos***** oDataReader = oComando.ExecuteReader() ' obtener DataReader ' recorrer filas de la primera consulta While oDataReader.Read() Me.lstClientes.Items.Add(oDataReader("Nombre")) End While ' pasar a la siguiente consulta y recorrer ' las filas oDataReader.NextResult() While oDataReader.Read() Me.lstProductos.Items.Add(oDataReader("Nombre")) End While oDataReader.Close() oConexion.Close() Catch oExcep As OleDbException ' si se produce algún error, ' lo capturamos mediante el objeto ' de excepciones particular para ' el proveedor de OLEDB MessageBox.Show("Error al conectar con datos" & _ ControlChars.CrLf & _ oExcep.Message & ControlChars.CrLf & _ oExcep.Source()) End Try End SubEnd Class
Usals:
Solo te puedo decir que lo que as puesto en el mensaje anterior esta mal
fijate:
Dim oComando As New System.Data.OleDb.OleDbCommand("SELECT * FROM Clientes;" & "SELECT * FROM Clientes;", oConexion)
cuando deberia ser:
Dim oComando As New System.Data.OleDb.OleDbCommand("SELECT * FROM Clientes;" & "SELECT * FROM Productos;", oConexion)
un saludo
senzao18:
Hola mira este es tu codigo...
--- Código: Text --- Dim oComando As New System.Data.OleDb.OleDbCommand("SELECT * FROM Clientes;" & "SELECT * FROM Clientes;", oConexion)
Y este el de snaft
--- Código: Text --- Dim oComando As New System.Data.OleDb.OleDbCommand("SELECT * FROM Clientes; SELECT * FROM Productos", oConexion)
Como puedes notar ti tienes un punto y coma " ; " al final de la istruccion sql.
Y probblemente por eso te sale el error :
" Error al conectar con datos.Se encontraron caracteres después del final de la instrucción SQL[/size]. Microsoft Jet Database Engine"
Espero y sea eso para que puedas seguir adelante.....
Navegación
[#] Página Siguiente
[*] Página Anterior
Ir a la versión completa