Compartir a través de


Propiedad Field.Size (DAO)

Se aplica a: Access 2013, Office 2013

Establece o devuelve un valor que indica el tamaño máximo en bytes de un objeto Field.

Sintaxis

expresión . Tamaño

expression Variable que representa un objeto Field.

Comentarios

Para un objeto que todavía no está anexado a la colección Fields, esta propiedad es de lectura y escritura.

Para aquellos campos (distintos de los campos tipo Memo) que contienen datos sobre caracteres, la propiedad Size indica el número máximo de caracteres que admite ese campo. Para campos numéricos, la propiedad Size indica el número de bytes de almacenamiento que se requieren.

El uso de la propiedad Size depende del objeto que contiene la colección Fields a la que se anexa el objeto Field, como se muestra en la tabla siguiente.

Objeto anexado a

Uso

Índice

No se admite

QueryDef

Solo lectura

Recordset

Solo lectura

Relation

No compatible

TableDef

Solo lectura

Cuando se crea un objeto Field con un tipo de datos distinto de Text, el valor de la propiedad Type determina automáticamente el valor de la propiedad Size; no es necesario establecerlo. Sin embargo, para un objeto Field con el tipo de datos Text, se puede establecer Size en cualquier entero que no supere el tamaño máximo de texto (255 para bases de datos de Microsoft Access). Si no se establece el tamaño, el campo tendrá el tamaño que la base de datos permita.

Para objetos Field Long Binary y Memo, Size se establece siempre en 0. Use la propiedad FieldSize del objeto Field para determinar el tamaño de los datos en un registro concreto. El tamaño máximo de un campo Long Binary o Memo está limitado únicamente por los recursos del sistema o por el tamaño máximo permitido por la base de datos.

Ejemplo

En este ejemplo se enumeran los nombres y tamaños de los objetos Field en la tabla Employees para demostrar el uso de la propiedad Size.

    Sub SizeX() 
     
     Dim dbsNorthwind As Database 
     Dim tdfEmployees As TableDef 
     Dim fldNew As Field 
     Dim fldLoop As Field 
     
     Set dbsNorthwind = OpenDatabase("Northwind.mdb") 
     Set tdfEmployees = dbsNorthwind.TableDefs!Employees 
     
     With tdfEmployees 
     
     ' Create and append a new Field object to the 
     ' Employees table. 
     Set fldNew = .CreateField("FaxPhone") 
     fldNew.Type = dbText 
     fldNew.Size = 20 
     .Fields.Append fldNew 
     
     Debug.Print "TableDef: " & .Name 
     Debug.Print " Field.Name - Field.Type - Field.Size" 
     
     ' Enumerate Fields collection; print field names, 
     ' types, and sizes. 
     For Each fldLoop In .Fields 
     Debug.Print " " & fldLoop.Name & " - " & _ 
     fldLoop.Type & " - " & fldLoop.Size 
     Next fldLoop 
     
     ' Delete new field because this is a demonstration. 
     .Fields.Delete fldNew.Name 
     
     End With 
     
     dbsNorthwind.Close 
     
    End Sub