Notas .NET

Friday, July 28, 2006

Algunas funciones VB.NET útiles para el manejo de BD

Esta función recibe como parámetro una sentencia SQL de tipo INSERT, UPDATE o DELETE y la ejecuta:

Sub RunSQLBD(ByVal StrSQL As String)
Dim dbConnection As New SqlConnection(ConfigurationManager.AppSettings("MyDataBase"))
Dim dbCommand As New SqlCommand(StrSQL, dbConnection)
Try
dbConnection.Open()
dbCommand.ExecuteNonQuery()
Finally
dbConnection.Close()
End Try
End Sub


Recordemos que:

ConfigurationManager.AppSettings("MyDataBase")

Hace referencia a la siguiente línea creada en el web.config:

<appSettings>
<add key="MyDataBase" value="server=SERVER_NAME;database=DATABASE_NAME;UID=sa;PWD=xxxxx;/>
</appSettings>


2. GetDataSetBD

La siguiente función regresa un DataSet a partir de una sentencia SQL de tipo SELECT

Function GetDataSetBD(ByVal StrSQL As String) As DataSet
 Dim dbConnection As New SqlConnection(ConfigurationManager.AppSettings("MyDataBase"))
  Dim objAdapter As New SqlDataAdapter(StrSQL, dbConnection)
  Dim ds As New DataSet()
  Try
    objAdapter.Fill(ds)
  Catch ex As Exception
    Throw New Exception(ex.Message, ex.InnerException)
  Finally
  objAdapter.Dispose()
  If dbConnection.State = ConnectionState.Open Then dbConnection.Close()
  dbConnection.Dispose()
  End Try
  Return ds
End Function


La instrucción throw nos permitirá arrojar el error en caso de que lo haya. De ese modo cuando llamemos esta función podremos hacer algo como lo siguiente.


  Try
    Dim ds As New DataSet
    ds = GetDataSetBD("SELECT * FROM Usuarios")
    'AQUÍ PROCESAMOS EL DATASET COMO QUERAMOS
  Catch ex As Exception
    'AQUÍ OBTENEMOS EL ERROR GENERADO Y REALIZAMOS ALGUNA ACCIÓN PERTINENTE
  End Try