Propriedade Field.Size (DAO)
Aplica-se ao: Access 2013, Office 2013
Define ou retorna um valor que indica o tamanho máximo, em bytes, de um objeto Field.
Sintaxe
expressão . Tamanho
expressão Uma variável que representa um objeto de Campo.
Comentários
Para um objeto ainda não acrescentado à coleção Fields, essa propriedade é de leitura/gravação.
Para campos (diferentes dos campos tipo Memorando) que contêm dados de caractere, a propriedade Size indica o número máximo de caracteres que o campo pode ter. Para os campos numéricos, a propriedade Size indica quantos bytes de repositório serão necessários.
O uso da propriedade Size depende do objeto que contém a coleção Fields à qual o objeto Field foi acrescentado, conforme mostra a tabela a seguir.
Objeto acrescentado a |
Uso |
---|---|
Índice |
Sem suporte |
QueryDef |
Somente leitura |
Recordset |
Somente leitura |
Relation |
Sem suporte |
TableDef |
Somente leitura |
Quando você criar um objeto Field com um tipo de dados diferente de Texto, a definição da propriedade Type determinará automaticamente a definição da propriedade Size; não será necessário defini-la. Para um objeto Field com o tipo de dados Texto, no entanto, você deve definir Size como um número inteiro até o tamanho de texto máximo (255 para o banco de dados do Microsoft Access). Se você não definir o tamanho, o campo será tão grande quanto o banco de dados permitir.
Para objetos Long Binary e Memo Field, Size será sempre definido como 0. Use a propriedade FieldSize do objeto Field para determinar o tamanho dos dados em um registro específico. O tamanho máximo de um campo Long Binary ou Memo estará limitado apenas pelos recursos do sistema ou pelo tamanho máximo que o banco de dados permitir.
Exemplo
Este exemplo demonstra a propriedade Size pela enumeração dos nomes e dos tamanhos dos objetos Field na tabela Funcionários.
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