Access - Duda Access 2003

 
Vista:

Duda Access 2003

Publicado por Neodark (4 intervenciones) el 07/09/2006 11:21:47
Hola , queria saber si puedo saber el tipo de dato de un campo de una tabla. Por ejemplo si es una fecha o una cadena.

Lo usaré con la propiedad field de un recordset -> tabla.fields(campotabla)

Un saludo.
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de Alejandro

Obtener el tipo de dato de un campo de una tabla

Publicado por Alejandro (4142 intervenciones) el 25/07/2023 16:32:32
En Microsoft Access, puedes obtener el tipo de dato de un campo de una tabla utilizando la propiedad "Type" del objeto "Field" en un recordset. El recordset es una estructura que permite interactuar con los datos de una tabla o consulta de la base de datos.

Aquí tienes un ejemplo de cómo puedes obtener el tipo de dato de un campo específico de una tabla:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
Sub ObtenerTipoDatoCampo()
    Dim db As DAO.Database
    Dim rs As DAO.Recordset
    Dim tabla As String
    Dim campo As String
    Dim tipoDato As String
 
    ' Cambiar el nombre de la tabla y el campo según tu caso
    tabla = "NombreTabla"
    campo = "NombreCampo"
 
    ' Abre la base de datos actual
    Set db = CurrentDb
 
    ' Abre un recordset basado en la tabla
    Set rs = db.OpenRecordset(tabla)
 
    ' Verifica si el campo existe en la tabla
    If rs.Fields(tabla & "." & campo).Name = campo Then
        ' Obtiene el tipo de dato del campo
        tipoDato = rs.Fields(tabla & "." & campo).Type
 
        ' Comprueba el tipo de dato y muestra un mensaje
        Select Case tipoDato
            Case dbText
                MsgBox "El campo es de tipo Texto."
            Case dbMemo
                MsgBox "El campo es de tipo Memo."
            Case dbDate
                MsgBox "El campo es de tipo Fecha/Hora."
            Case dbInteger
                MsgBox "El campo es de tipo Entero."
            ' Agrega más casos según los tipos de datos que desees comprobar
            Case Else
                MsgBox "El campo es de otro tipo de dato."
        End Select
    Else
        MsgBox "El campo especificado no existe en la tabla."
    End If
 
    ' Cierra el recordset y la base de datos
    rs.Close
    Set rs = Nothing
    Set db = Nothing
End Sub

Asegúrate de cambiar "NombreTabla" y "NombreCampo" en el código anterior con el nombre real de la tabla y el campo que deseas verificar. Este código abrirá un recordset basado en la tabla, accederá al campo especificado y determinará su tipo de dato mediante la propiedad "Type" del objeto "Field". Luego, mostrará un mensaje con el tipo de dato del campo.

Este código utiliza la biblioteca de objetos de acceso a datos (DAO), por lo que es necesario asegurarse de que la referencia a "Microsoft DAO 3.6 Object Library" (u otra versión) esté habilitada en el editor de Visual Basic for Applications (VBA) para que funcione correctamente.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar