Comprobar si un campo existe en una tabla
15.04.2008
La siguiente función devuelve verdadero o falso dependiente si el campo que se le pasa existe o no en una determinada tabla de la basa de datos. Para que la función marche correctamete es necesario agregar la referencia a microsoft Dao object Library.
Public Function Comprobar_Campo(Ruta_bd As String, La_Tabla As String, El_campoAs String) As Boolean
‘Variables para acceder a la base de datos mediante Dao
Dim obj_Database As Database
Dim obj_TableDef As TableDef
Dim obj_Field As Field
On Error GoTo err_function
‘Abre la base de datos
Set obj_Database = Workspaces(0).OpenDatabase(Ruta_bd)
‘Referencia a la tabla
Set obj_TableDef = obj_Database.TableDefs(La_Tabla)
On Error Resume Next
‘Referencia al campo que se quiere comprobar. Si da error al referirnos a el, es por que no existe
Set obj_Field = obj_TableDef.Fields(El_campo)
‘Comprueba si hay error
If Err.Number = 0 Then
Comprobar_Campo = True
End If
‘Cierra la base
obj_Database.Close
If Not obj_Database Is Nothing Then
Set obj_Database = Nothing
End If
Exit Function
‘Error
err_function:
If Not obj_Database Is Nothing Then
obj_Database.Close
End If
MsgBox Err.Description, vbCritical
End Function
Private Sub Command1_Click()
Dim Path_Bd As String
Dim Existe As Boolean
‘Path de la base de datos biblio de visual basic
Path_Bd = “C:\Archivos de programa\Microsoft ” & “Visual Studio\VB98\biblio.mdb”
‘Comprueba el campo Au_Id de la tabla Authors
Existe = Comprobar_Campo(Path_Bd, “Authors”, “Au_Id”)
‘El campo existe
If Existe Then
MsgBox ” El campo Existe “, vbInformation
Else
MsgBox ” El campo NO Existe “, vbInformation
End If
End Sub
Private Sub Form_Load()
Command1.Caption = ” Verificar campo “
End Sub
Fuente: www.recursosvisualbasic.com