CDaoTableDef::CreateField

调用该成员函数添加字段。该表。

void CreateField( 
   LPCTSTR lpszName, 
   short nType, 
   long lSize, 
   long lAttributes = 0  
); 
void CreateField( 
   CDaoFieldInfo& fieldinfo  
);

参数

  • lpszName
    将字符串表达式中的指针指定此字段的名称。

  • nType
    指示字段的数据类型值。 设置可以是以下值之一:

    类型

    大小(字节)

    说明

    dbBoolean

    1 个字节

    BOOL

    dbByte

    1

    BYTE

    dbInteger

    2

    int

    dbLong

    4

    long

    dbCurrency

    8

    货币(COleCurrency)

    dbSingle

    4

    float

    dbDouble

    8

    double

    dbDate

    8

    日期/时间(COleDateTime)

    dbText

    1 – 255

    文本(CString)

    dbLongBinary

    0

    长的二进制文件(OLE对象),CLongBinaryCByteArray

    dbMemo

    0

    通知单(CString)

  • lSize
    指示最大大小,在字节,字段包含文本的值或包含文本值或数值的固定大小字段。 lSize 参数为所有忽略除文本字段。

  • lAttributes
    与字段与相应的属性的值进行组合使用按位或。

    常量

    说明

    dbFixedField

    字段长度是固定的(数字字段的默认值)。

    dbVariableField

    字段长度为可变(仅限文本字段)。

    dbAutoIncrField

    新记录的字段值自动递增到不能更改的单个长整数。 仅支持Microsoft Jet数据库表。

    dbUpdatableField

    可以更改字段值。

    dbDescending

    字段按降序(Z –或100 – 0)序列排序(仅适用于索引对象的字段集合中的域对象)。 如果省略该常数,该字段按照(A – Z 或 0 – 100)序列排序(默认)。

  • fieldinfo
    CDaoFieldInfo 结构的引用。

备注

DAOField (OLE)对象被创建并被追加到字段 DAOTableDef (OLE)对象的集合。 除了检查对象的属性使用外,还可以使用 CDaoFieldInfo 构造创建新字段的输入参数在tabledef。 CreateField 的第一个版本更加简单,使用,但是,如果需要更好的控制,可以使用 CreateField的第二个版本,采用 CDaoFieldInfo 参数。

如果使用采用 CDaoFieldInfo 参数 CreateField 版本,必须仔细设置 CDaoFieldInfo 结构的以下成员中的每一名:

  • m_strName

  • m_nType

  • m_lSize

  • m_lAttributes

  • m_bAllowZeroLength

CDaoFieldInfo 的其余成员应将设置为 0FALSE,或者一个空字符串,以适合该成员或 CDaoException 会发生此错误。

有关相关信息,请参见主题“CreateField方法” DAO帮助。

要求

Header: afxdao.h

请参见

参考

CDaoTableDef Class

层次结构图

CDaoTableDef::DeleteField

CDaoTableDef::CreateIndex

CDaoTableDef::DeleteIndex