Ver Mensaje Individual
  #5 (permalink)  
Antiguo 05/10/2010, 16:55
cristianeme
 
Fecha de Ingreso: octubre-2010
Mensajes: 6
Antigüedad: 13 años, 7 meses
Puntos: 1
Respuesta: Saber si existe una tabla dentro de una BD

Mirá lo que había hecho yo:

Cita:
Option Explicit

'************************************************* **************************
' Ejemplo para verificar si una tabla se encuentra en la base de datos _
Nota: Agregar la Referencia a -->> Microsoft Activex Data Objects
'************************************************* **************************

Private Function Tabla_Existe(ByVal Path_BD As String, _
ByVal La_Tabla As String) As Boolean


On Error GoTo Err_Sub

Const Cadena As String = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source="

Dim datos() As String
Dim i As Integer
Dim cnn As Connection

'Nueva conexión Ado
Set cnn = New Connection

'Abre la base de datos
cnn.Open Cadena & Path_BD

'Declara y abre el recordset
Dim RS As Recordset
Set RS = cnn.OpenSchema(adSchemaTables)

datos = Split(RS.GetString, vbTab)


For i = 0 To UBound(datos)
'Compara el valor,( la tabla )
If Trim(UCase(datos(i))) = Trim(UCase(La_Tabla)) Then
Tabla_Existe = True ' La tabla existe
Exit For
End If
Next

'cierra el recordset y la base de datos
On Error Resume Next
RS.Close
Set RS = Nothing
cnn.Close
Set cnn = Nothing
Exit Function
'error
Err_Sub:
MsgBox Err.Description, vbCritical
On Error Resume Next
RS.Close
Set RS = Nothing
cnn.Close
Set cnn = Nothing
End Function

Private Sub Command1_Click()
Dim ret As Boolean
Dim Path As String

' Path de la base de datos Biblio.mdb de visual basic
Path = "C:\Archivos de programa\Microsoft Visual Studio\VB98\biblio.mdb"

'verifica si la tabla Authors existe
ret = Tabla_Existe(Path, "Authors")

If ret Then
MsgBox "La tabla existe", vbInformation 'Si
Else
MsgBox "La tabla NO existe", vbInformation 'No
End If


End Sub

Private Sub Form_Load()
Command1.Caption = " Verificar tabla "
End Sub
era una cagada enorme y horrrrrrrrible!!!!!

Gracias Skalitiko !!!!!