Foros del Web » Programación para mayores de 30 ;) » .NET »

conexcion VB.net 2005 con SLQ2000 y ini

Estas en el tema de conexcion VB.net 2005 con SLQ2000 y ini en el foro de .NET en Foros del Web. Hola a todos, los molesto por lo siguiente, tengo una pequeña aplicacion que estoy haciendo, la cual usa una db de MSSQL 2000, y estoy ...
  #1 (permalink)  
Antiguo 14/05/2012, 18:02
Avatar de gasuton  
Fecha de Ingreso: octubre-2010
Ubicación: Abandonware
Mensajes: 132
Antigüedad: 13 años, 6 meses
Puntos: 2
Pregunta conexcion VB.net 2005 con SLQ2000 y ini

Hola a todos, los molesto por lo siguiente, tengo una pequeña aplicacion que estoy haciendo, la cual usa una db de MSSQL 2000, y estoy viendo que seria practico usar un archivo ini para tener los datos de conexcion, nombre de mi db, etc etc., ya que si los meto en el codigo cuanod quiera cambiarlos tendria que reprogramar y compilar una nueva version del mismo.

De hecho mi idea es tener un modulo que es el que se encargue de leer el ini, jalar los datos y en este mismo modulo tener la conexcion a mi db, para que desde mis forms pueda llamar la conexcion abrirla y cerrarla a gusto.

El tema es que he estado buscando algun tutorial de como hacer esto, pero la info que hay no es muy bueno y no es clara, por lo que espero me puedan ayudar con esto, sobre todo con la primera parte la cual lee los datos del ini.

Saludos
__________________
Ley numero 1: Si tu sistema falla seguro es una problema con la inteface entre el teclado y la silla.
Ley numero 2: El programador jamas tiene la culpa.
Ley numero 3: no me acuerdo
  #2 (permalink)  
Antiguo 16/05/2012, 10:04
Avatar de gasuton  
Fecha de Ingreso: octubre-2010
Ubicación: Abandonware
Mensajes: 132
Antigüedad: 13 años, 6 meses
Puntos: 2
Exclamación Respuesta: conexcion VB.net 2005 con SLQ2000 y ini

Hola a todos, he estado investigando en muchos lados y despues de dar vueltas por varios dias he llegado a la conclusion de que el ini en net ya no es tan usado, ya que hay algunas herramientas mejores, por lo que llegue a la conclusion de que es mejor usar un app.config el cual ya he realizado, pero tengo algunas dudas, las cuales espero me puedamn ayudar a solucionar:

Estoy usando vb.net 2005 y SQL Server 2000

en mi proyecto ya agrege la referencia system.configuration, en mi app.config ya genere un connectionstring les dejo el codigo para que lo vean y si esta mal me corrijan.

Código:
<connectionStrings>
    <add name="DBconexion" providerName="System.Data.SqlClient"
      connectionString="Data Source=ASPIRE;Initial Catalog=AGEPOS;Integrated Security=true;User Id=sa;Password=admin;"/>
  </connectionStrings>
creo que esto que hice esta bien, el tema lo tengo en el siguiente punto quiero hacer un modulo de conexion para que desde cualquier parte de mi proyecto solo llamo la funcion conexcion y listo, con esto pretendo ahorrar codigo.

les dejo lo que he puesto en mi modulo:

Código:
Module conexionDB

    Public sisdb As New SqlClient.SqlConnection

    Public strUsuario As String
    Public strDept As String
    Public mensaje As String

    Public Sub conectar()
        Imports System.Data.SqlClient

        dim dbcon as String = ConnectionString["DBconexion"].ConnectionString
        sisdb.ConnectionString = dbcon

    End Sub

End Module
pero tengo 3 errores:

1 en Imports tengo sintax error
2 en [" tengo identifier expected
3 en = dbcon tengo el error dbcon is not declares

de hecho ya tengo el codigo asi despues de probar muchas variantes por lo que ya estoy medio mareado.

Antes en VB6 esto lo hacia de esta manera (no con el mismo codigo), pero me funcionaba perfecto.

Espero me puedan ayudar.

Gracias.
__________________
Ley numero 1: Si tu sistema falla seguro es una problema con la inteface entre el teclado y la silla.
Ley numero 2: El programador jamas tiene la culpa.
Ley numero 3: no me acuerdo
  #3 (permalink)  
Antiguo 16/05/2012, 10:46
Avatar de cristiantorres  
Fecha de Ingreso: marzo-2012
Mensajes: 383
Antigüedad: 12 años, 1 mes
Puntos: 61
Respuesta: conexcion VB.net 2005 con SLQ2000 y ini

Hola si tienes la cadena de conexión en tu app.config tendrías que hacer algo así.
Código VB:
Ver original
  1. Imports System.Data.SqlClient
  2. Imports System.Configuration
  3. Module conexionDB
  4.  
  5.     Public Sub conectar()
  6.        
  7.         Dim connectionstring As String = ConfigurationManager.ConnectionStrings("DBconexion").ConnectionString
  8.         Dim conn As New SqlConnection(connectionstring)
  9.  
  10.     End Sub
  11.  
  12. End Module
__________________
Visita mi Blog C#, vb.net, asp.net, sql, java y mas...
Blog Cristian Torres
  #4 (permalink)  
Antiguo 16/05/2012, 15:58
Avatar de Aquaventus  
Fecha de Ingreso: junio-2010
Ubicación: Lima-Peru , En el alba de la naturaleza
Mensajes: 2.105
Antigüedad: 13 años, 10 meses
Puntos: 267
Respuesta: conexcion VB.net 2005 con SLQ2000 y ini

Hola gasuton, la solucion te dieron aqui arriba. Recuerda que los Imports van siempre en la cabecera y que la sintaxis "[ ]" pertenece a c# y no a VB que son "( )" por ello no reconoce tu clase. Saludos!.
__________________
Internet es tener todo el conocimiento global a tu disposición.
Desarrollo de Software - Ejemplos .Net
  #5 (permalink)  
Antiguo 17/05/2012, 12:34
Avatar de gasuton  
Fecha de Ingreso: octubre-2010
Ubicación: Abandonware
Mensajes: 132
Antigüedad: 13 años, 6 meses
Puntos: 2
Respuesta: conexcion VB.net 2005 con SLQ2000 y ini

Cita:
Iniciado por Aquaventus Ver Mensaje
Hola gasuton, la solucion te dieron aqui arriba. Recuerda que los Imports van siempre en la cabecera y que la sintaxis "[ ]" pertenece a c# y no a VB que son "( )" por ello no reconoce tu clase. Saludos!.
Jejeje me di cuenta de eso, pero gracias igual por el dato, de hecho ahora tengo otro detalle (malditas diferencias entre vb6 y .net, jejejej).

El detalle que tengo9 es el siguiente:

al parecer esta todo listo en mi modulo, les dejo el codigo:

Código:
Imports System
Imports System.Data
Imports System.Data.SqlClient
Imports System.Configuration

Module conexionDB

    Public sisdb As New SqlClient.SqlConnection

    Public strUsuario As String
    Public strDept As String
    Public mensaje As String

    Public Sub conectar()

        Dim connectionstring As String = ConfigurationManager.ConnectionStrings("DBconexion").ConnectionString
        Dim conn As New SqlConnection(connectionstring)

    End Sub

End Module

ahora les dejo el codigo de mi form donde tengo un datagrid al que le quiero completar la info:
Código:
mports System.Data
Imports System.Data.SqlClient

Public Class usuarios

    Private Sub usuarios_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load

        conectar()

        Dim da As New SqlDataAdapter("select * from usuarios", sisdb)
        Dim ds As New DataSet

        da.Fill(ds)

        DataGridView1.DataSource = ds.Tables(0)

    End Sub
End Class
El problema que tengo es que en el da.fill(ds) me da el siguiente error:

The ConnectionString property has not been initialized.

seguro me falta declarar algo para poder realizar bien la conexcion, el tema es que no se bien que es.



Les comento como lo hacia en vb6, yo en mi modulo declaraba ademas de la conexcion un
Public rs As New Recordset
y en el form llamaba a mi funcion conectar y despues de eso abria mi rs con un rs.open seguido de la sentenica de SQL.


Espero me puedan ayudar.

Saludos.
__________________
Ley numero 1: Si tu sistema falla seguro es una problema con la inteface entre el teclado y la silla.
Ley numero 2: El programador jamas tiene la culpa.
Ley numero 3: no me acuerdo
  #6 (permalink)  
Antiguo 17/05/2012, 13:40
Avatar de Aquaventus  
Fecha de Ingreso: junio-2010
Ubicación: Lima-Peru , En el alba de la naturaleza
Mensajes: 2.105
Antigüedad: 13 años, 10 meses
Puntos: 267
Respuesta: conexcion VB.net 2005 con SLQ2000 y ini

Hola gasuton no te preocupes por ello estamos aqui para ayudar.
Create una clase en donde puedas obtener la conexion de esta manera :
Código vb:
Ver original
  1. Imports System.Data
  2. Imports System.Data.SqlClient
  3. Imports System.Configuration
  4.  
  5. Public Class Conexion
  6.  
  7.     Dim conexion As SqlConnection
  8.     Public Function Conectar() As SqlConnection
  9.  
  10.         conexion = New SqlConnection _
  11.         (ConfigurationManager.ConnectionStrings("DBconexion").ConnectionString)
  12.  
  13.         Return conexion
  14.  
  15.     End Function
  16.  
  17. End Class

y luego dentro de tu form hacer esto :
Código vb:
Ver original
  1. Imports System.Data
  2. Imports System.Data.SqlClient
  3.  
  4. Public Class usuarios
  5.  
  6.         Dim cnx As New Conexion()
  7.  
  8.     Private Sub usuarios_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
  9.  
  10.         'Instancio a la variable sisdb con la clase
  11.        Dim sisdb as SqlConnection = cnx.Conectar()
  12.  
  13.         Dim da As New SqlDataAdapter("select * from usuarios", sisdb)
  14.         Dim ds As New DataSet
  15.  
  16.         'Abrimos la conexion
  17.        sisdb.Open()
  18.         'Llenamos el dataset
  19.        da.Fill(ds)
  20.         'Cerramos la conexion
  21.        sisdb.Close()
  22.  
  23.         DataGridView1.DataSource = ds.Tables(0)
  24.  
  25.     End Sub
  26. End Class

Espero te haya aclarado tus dudas. Saludos!.
__________________
Internet es tener todo el conocimiento global a tu disposición.
Desarrollo de Software - Ejemplos .Net
  #7 (permalink)  
Antiguo 17/05/2012, 14:25
Avatar de gasuton  
Fecha de Ingreso: octubre-2010
Ubicación: Abandonware
Mensajes: 132
Antigüedad: 13 años, 6 meses
Puntos: 2
De acuerdo Respuesta: conexcion VB.net 2005 con SLQ2000 y ini

Aquaventus millll gracias por la ayuda ya me funciono de primera de echo modifique un poco el codigo que me diate en mi modulo puse la funcion

Public cnx As New Conexion()

para que de esta manera ya no la tenga que declarar en ningun form mas, simplemente la llamo para generar la conexion.


Mill gracias por la ayuda, ahora viene lo mejor y lo mas complicado terminar de entender lo que ahi hiciste, jejejeje , y rehacer mi sistema en VB.net, por lo que me tendran dando vueltas por aqui.

Saludos y Gracias.
__________________
Ley numero 1: Si tu sistema falla seguro es una problema con la inteface entre el teclado y la silla.
Ley numero 2: El programador jamas tiene la culpa.
Ley numero 3: no me acuerdo
  #8 (permalink)  
Antiguo 17/05/2012, 14:29
Avatar de Aquaventus  
Fecha de Ingreso: junio-2010
Ubicación: Lima-Peru , En el alba de la naturaleza
Mensajes: 2.105
Antigüedad: 13 años, 10 meses
Puntos: 267
Respuesta: conexcion VB.net 2005 con SLQ2000 y ini

Cita:
Mill gracias por la ayuda, ahora viene lo mejor y lo mas complicado terminar de entender lo que ahi hiciste, jejejeje , y rehacer mi sistema en VB.net, por lo que me tendran dando vueltas por aqui.
Hola gasuton!! no te preocupes estaremos por aquí dispuestos a ayudarte. Saludos!!! .
__________________
Internet es tener todo el conocimiento global a tu disposición.
Desarrollo de Software - Ejemplos .Net

Etiquetas: ini, sql, aplicaciones
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 13:44.