Como puedo ejecutar consultas SQL de una base datos.

Esta es una típica pregunta de los usuarios que normalmente se inician en cualquier lenguaje de programación "Como puedo ejecutar consultas SQL de una base datos", existen muchos sitios que contienen información mucho más acabada en el tema, pero quiero exponer una forma simple y que sea útil para cualquier persona con mínimos conocimientos.
 
Antes que nada revisar los strings de conexión, para esto les recomiendo la biblia de ADO de Carl Prothman http://www.carlprothman.net/Default.aspx?tabid=81
 
Funciones para cualquier tipo de base de datos excepto para SQL Server, ya que utilizar otros componentes de ADO especiales para este motor de base de datos.
 
   'Esta función nos permite ejecutar una consulta SQL sin devolver Resultado.
    Sub EjecutarQuerySinResultado(ByVal Query As String)
 
        'Obtenemos el String de conexión directamente de un archivo de configuración
        Dim ConString As String = System.Configuration.ConfigurationSettings.AppSettings.Get("BaseDatos")
 
        Try
            Dim objConnection As New OleDb.OleDbConnection(ConString)
            objConnection.Open()
 
            Dim objCommand As New OleDb.OleDbCommand(Query, objConnection)
 
            objCommand.ExecuteNonQuery()
            objCommand = Nothing
 
            objConnection.Close()
            objConnection = Nothing
 
        Catch ex As Exception
            MsgBox(ex)
        End Try
 
    End Sub
 
    'Ejecutar Query o Consulta devolviendo un Dataset
    Function EjecutarQuery(ByVal Query As String) As DataSet
 
        Dim ConString As String = System.Configuration.ConfigurationSettings.AppSettings.Get("BaseDatos")
 
        Dim objDataSet As New DataSet
 
        Try
            Dim
objConnection As New OleDb.OleDbConnection(ConString)
            objConnection.Open()
 
            Dim objCommand As New OleDb.OleDbCommand(Query, objConnection), _
                objDataAdapter As New OleDb.OleDbDataAdapter(objCommand)
 
            objDataAdapter.Fill(objDataSet, "tabla")
            objDataAdapter = Nothing
 
            objCommand = Nothing
 
            objConnection.Close()
            objConnection = Nothing
 
        Catch ex As Exception
 
        End Try
 
        Return objDataSet
 
    End Function
 
 
Para SQL Server se deberían utilizar las siguientes funciones
 
    Sub EjecutarQuerySinResultado(ByVal Query As String)
 
        'Obtenemos el String de conexión directamente de un archivo de configuración
        Dim ConString As String = System.Configuration.ConfigurationSettings.AppSettings.Get("BaseDatos")
 
        Try
            Dim objConnection As New SqlConnection(ConString)
            objConnection.Open()
 
            Dim objCommand As New SqlCommand(Query, objConnection)
 
            objCommand.ExecuteNonQuery()
            objCommand = Nothing
 
            objConnection.Close()
            objConnection = Nothing
 
        Catch ex As Exception
            MsgBox(ex)
        End Try
 
    End Sub
 
    'Ejecutar Query o Consulta devolviendo un Dataset
    Function EjecutarQuery(ByVal Query As String) As DataSet
 
        Dim ConString As String = System.Configuration.ConfigurationSettings.AppSettings.Get("BaseDatos")
 
        Dim objDataSet As New DataSet
 
        Try
            Dim
objConnection As New SqlConnection(ConString)
            objConnection.Open()
 
            Dim objCommand As New SqlCommand(Query, objConnection), _
                objDataAdapter As New SqlDataAdapter(objCommand)
 
            objDataAdapter.Fill(objDataSet, "tabla")
            objDataAdapter = Nothing
 
            objCommand = Nothing
 
            objConnection.Close()
            objConnection = Nothing
 
        Catch ex As Exception
 
        End Try
 
        Return objDataSet
 
    End Function
 
Saludos,
Jhonny Vargas P.

Comments

# re: Como puedo ejecutar consultas SQL de una base datos.

Thursday, June 01, 2006 7:13 PM by jose

bueno mi pregunta es mas simple, no se nada de sql, asi que te pregunto esto, necesito ejecutar esto mira:  UPDATE CHARACTER SET CTLCODE=0 WHERE CTLCODE IS NULL   ahora mi pregunta: donde debo colocar eso para que funcione plisssss, mi sql server es 2000  que ignorante soy

# Como puedo ejecutar consultas SQL de una base datos.

Thursday, September 07, 2006 3:46 PM by gabriel

me podes decir como hacer para hacer un store que me devuelva varioas datos de varias instrucciones SQL. gracias

# re: Como puedo ejecutar consultas SQL de una base datos.

Monday, September 11, 2006 8:59 PM by jvargas

Es muy simple, solo debes hacer tantos select como necesites utilizar en tu programa.

Select Codigo, Nombre From Articulo

Select Codigo, Nombre From Cliente

Saludos,

Jhonny Vargas P.

# re: Como puedo ejecutar consultas SQL de una base datos.

Wednesday, August 08, 2007 3:40 PM by edith

como puedo obtener ciertos campos de una tabla con una consulta :  se q con el where pero los campos de los filtros (q son 2) se encuentran en los combos.... :-(

no puedo usar " where campo ='azul' " seria igualarlo al nombre del combo pero no se como..jejeje agradeceria su ayuda

buen dia byeee

# re: Como puedo ejecutar consultas SQL de una base datos.

Wednesday, August 08, 2007 3:55 PM by edith

como realizar una ocnsulta sql cuando los filtros q se usaran provienen de unos combos

where campo = ?????????

# re: Como puedo ejecutar consultas SQL de una base datos.

Monday, September 10, 2007 12:06 PM by Liliana

Hola!

Estoy haciendo una pequeña aplicación en VB 6.0 en la que en un textbox introduces la marca (un campo de la tabla) y/o el modelo de un coche y te saca inmediatamente un informe acerca de los clientes que han preguntado por ese coche (si es que lo ha hecho alguno)

La base de datos consiste en una sóla tabla (Tvisitas) hecha en Acess.

He creado un DataEnviroment en el que le he agregado un DECommand para poner los campos de la tabla Tvisita, un DataReport (para el informe) y un DConnectionDesigner, el problema es que al ejecutarlo y darle al botón en el que he puesto el código para que haga la búsqueda me salta éste error:

"No se puede utilizar la conexión para realizar ésta operación. Está cerrada o no es válida en éste contexto"

No tiene sentido, el ADODB.Connection lo tengo abierto, lo abro de la siguiente manera:

"rsConsulta.Open stSQL, CN ', adOpenDynamic,adLockOptimistic, adCmdText

"

Si no caes en mi error al menos te pediría que me dijeras alguna forma alternativa para hacerlo.

Gracias de antemano.

# re: Como puedo ejecutar consultas SQL de una base datos.

Monday, December 03, 2007 9:20 PM by ana

hola bueno ps soy estoy hhaciendo un pequeño sistema en power builder y me cobnfunde usar casi las consultas de sql haber no si me das una solucion

# re: Como puedo ejecutar consultas SQL de una base datos.

Monday, December 10, 2007 9:46 PM by esqueleitor

yo quiero hacer una consulta asi:

x= select sum(campo) from tabla where campo= #" & me.MaskEdBox1 & " # ".

b = cn.Execute(x)

mi pregunta es como hago para que el resultado de la consulta quede guardado en una variable, es decir la suma quede almacenada en una variable

# re: Como puedo ejecutar consultas SQL de una base datos.

Tuesday, January 29, 2008 5:08 PM by Luis CLaros

En un campo de una tabla de una Base de Datos SQL Server 2000 el usuario puede grabar operaciones matemáticas, tales como 4 * 3, ¿Cómo puedo obtener el resultado de esa operación matemática y grabarlo en otro campo?

Es decir

Campo Actual  Campo Calculado

4*3            12

5*4            20

Cómo mediante el SQL puedo obtener el Campo Calculado en Base al Campo Actual.

# re: Como puedo ejecutar consultas SQL de una base datos.

Wednesday, April 30, 2008 10:33 AM by josy

me gustaria queme ayudaras gracias

# re: Como puedo ejecutar consultas SQL de una base datos.

Friday, May 02, 2008 11:48 AM by jvargas

Ok... te acabo de agregar...sino dime por esta via que necesitas.

Leave a Comment

(required) 
(required) 
(optional)
(required)