ayuda con la coenxion de la bd

Tambien pueden postear temas relacionados con el antiguo Visual Basic

ayuda con la coenxion de la bd

Notapor siosss » Lun Feb 28, 2005 6:14 am

hola!
estoy pasando una aplicacion hecha a base de formularios q conecta con una bd de accces de vb6 a visual .net y necesito saber como tengo q cambiar todo lo referente a la conexion de la bd. como cambiar todo lo de recordsource, recordset, etc ya q nunca he visto lo de el ado.net.
otra cosa: tengo la version trial del visual studio 2003 y cuando quiero anyadir un modulo, q me han dicho q lo añada ara el tema de la conexion, me dice q 'el pakete vb no esta disponible o registrado' alguiens abe q puedo hacer para estos 2 problemas?? gracias!!!
siosss
Novato
Novato
 
Mensajes: 2
Registrado: Mié Feb 09, 2005 6:47 am


Notapor Arkhel » Vie Feb 10, 2006 7:17 pm

1.-Crea una nueva aplicación
2.-Agrega un Botón desde el diseñador
3.-Dale doble Click

En el Encabezado del código, siendo las primeras líneas, escribe:

'Iniciamos, importando espacio de nombres requerido para:
Imports System
'SQL Server
Imports System.Data.SqlClient
'Access
Imports System.Data.Oledb
'Oracle
Imports System.Data.OracleClient
'este último se necesita agregar la directiva desde:
'Menú - Proyecto - Agregar Referencia - System.Data.OracleClient.dll

Public Class Form1
Inherits System.Windows.Forms.Form

" Código generado por el Diseñador de Windows Forms "

'Declarando "globalmente" la conexion
Dim Conexion as new SqlClientConnection("server=servidor;" & _
database=NombredelaBase;uid=sa")
'usuario administrador "SA" de sql server

' o bien se puede hacer connectionstring, adentro de ub procedimiento
'Sub Conectar()
'Conexion.ConnectionString = ("server=servidor;" & _
'database=NombredelaBase;uid=sa")

'Verificar si tenemos la conexión a la base de datos

Private Sub Button_Click(Byval sender as object, e as eventargs) _
handles button.Click

try
conexion.open()
'Estado de la conexion, 1 conectado; 0 desconectado
msgbox(conexion.State)

catch ex as Exception
msgbox(ex.message)
end try
conexion.close()

End Sub

End Class
No busco mi dicha en la indiferencia y lo que más estremece al hombre es casi siempre lo que más le conviene.
Arkhel
Novato
Novato
 
Mensajes: 16
Registrado: Vie Feb 10, 2006 4:11 pm
Ubicación: México, Monterrey


Notapor Arkhel » Vie Feb 10, 2006 8:09 pm

Para Access sólo se necesita cambiarle al código:


Dim conexion as new OledbConnection( _
"Provider=Microsoft.Jet.Oledb.4.0;Data Source=C:\Bd1.mdb")


En cuanto al recordset, puedes utilizar en vb .net un Objeto DataReader,
así como un dataset, teniendo un dataAdapter.

'Lectura de datos

'Declarando un Objeto DataReader'
Dim Lectura as OledbDatareader
'Nota: el datareader no se instancia
'El objeto DataReader trabaja sobre una conexión abierta, a través de un
'comando que deberá ser ejecutado bajo el método ExecuteReader.
'Este objeto es la opcion más rápida de lectura de datos.

'Declarando un objeto Command
'El objeto command permite ejecutar comandos sobre un almacén de
'datos sobre el cual mantenemos conexión

Dim cmd as OledbCommand(Cmd.CommandType.Text, Conexion)

'Establecemos como Texto el tipo de comando, le asignamos un objeto
'OledbConnecttion, que en este caso se llama conexion
'Nota: La conexion debe estar previamente declarada, junto con la cadena
' de conexión

'En caso de utilizar el connectionstring, podemos configurar el comando
' en un procedimiento

'Sub ComandoConfg()
'Conexion.connectionString = "Provider......"
'Cmd.Connection =Conexion
'cmd.commandType = CommandType.text
'End sub


'Realizando Consulta, con algunos criterios

Private Sub Button_CLick(Byval sender as object, e as eventargs) _
handles button.click

'llamando al procedimiento BusquedaAlmacen()
BusquedaAlmacen()

End Sub

Sub BusquedaAlmacen()
Try
conexion.Open()
'Haciendo la Consulta
cmd.CommandText = "Select id_sucursal from sucursal " & _
"where nombre= '" & CBoxSucursal.Text & "'"

'ExecuteScalar sólo regresa un dato
id = cmd.ExecuteScalar
cmd.CommandText = "Select Nombre from almacen " & _
"where ck_tipo='M' and fk_sucursal = " & _
id & " order by nombre desc"
Lectura = cmd.ExecuteReader
'CBoxAlmacen y CboxSucursal.-Objeto ComboBox Previamente
'declarado
'Lo vaciamos
CBoxAlmacen.Items.Clear()
'Lectutra.Read mientras lee datos
Do While Lectura.Read
CBoxAlmacen.Items.Add(Lectura("Nombre"))

Loop
'Cerrando DataReader
Lectura.Close()
Catch ex As Exception
'Mensaje de error, al ocurrir una incidencia ignora lo demás despues
'de esta.
MsgBox(ex.Message)

End Try
conexion.Close()
If CBoxAlmacen.Items.Count <> 0 Then
CBoxAlmacen.Text = CBoxAlmacen.Items(0)
Else
CBoxAlmacen.Text = "Empty"
CBoxStock.Text = "Empty"
End If

End Sub
No busco mi dicha en la indiferencia y lo que más estremece al hombre es casi siempre lo que más le conviene.
Arkhel
Novato
Novato
 
Mensajes: 16
Registrado: Vie Feb 10, 2006 4:11 pm
Ubicación: México, Monterrey


    

Volver a Visual Basic .NET

¿Quién está conectado?

Usuarios navegando por este Foro: No hay usuarios registrados visitando el Foro y 0 invitados