MSMVPS.COM
The Ultimate Destination for Blogs by Current and Former Microsoft Most Valuable Professionals.

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.

Posted Thu, Dec 15 2005 17:13 by jvargas

Comments

jose wrote re: Como puedo ejecutar consultas SQL de una base datos.
on Thu, Jun 1 2006 19:13
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
gabriel wrote Como puedo ejecutar consultas SQL de una base datos.
on Thu, Sep 7 2006 15:46

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

jvargas wrote re: Como puedo ejecutar consultas SQL de una base datos.
on Mon, Sep 11 2006 20:59

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.

edith wrote re: Como puedo ejecutar consultas SQL de una base datos.
on Wed, Aug 8 2007 15:40

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

edith wrote re: Como puedo ejecutar consultas SQL de una base datos.
on Wed, Aug 8 2007 15:55

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

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

Liliana wrote re: Como puedo ejecutar consultas SQL de una base datos.
on Mon, Sep 10 2007 12:06

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.

ana wrote re: Como puedo ejecutar consultas SQL de una base datos.
on Mon, Dec 3 2007 21:20

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

esqueleitor wrote re: Como puedo ejecutar consultas SQL de una base datos.
on Mon, Dec 10 2007 21:46

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

Luis CLaros wrote re: Como puedo ejecutar consultas SQL de una base datos.
on Tue, Jan 29 2008 17:08

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.

josy wrote re: Como puedo ejecutar consultas SQL de una base datos.
on Wed, Apr 30 2008 10:33

me gustaria queme ayudaras gracias

jvargas wrote re: Como puedo ejecutar consultas SQL de una base datos.
on Fri, May 2 2008 11:48

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

Carmen wrote Existe una forma ejecutar Querys y presentar resultados con graficas
on Thu, Aug 13 2009 13:21

Hola soy nueva en esto podrian ayudarme con la siguiente pregunta por favor ¿Como ejecutar Querys y presentar resultados con graficas?

Anonymous wrote re: Como puedo ejecutar consultas SQL de una base datos.
on Wed, Jun 23 2010 11:38

como ago para buscar por medio del codigo del cliente osea quiero hacer fitros por medio del id

RodrigoEspinoza wrote re: Como puedo ejecutar consultas SQL de una base datos.
on Tue, Jul 6 2010 14:53

Gracias don Jhonny Vargas por su invaluable ayuda y aporte

Add a Comment

(optional)  
(optional)
(required)  
Remember Me?
If you can't read this number refresh your screen
Enter the numbers above: