DBCREATE()

Creates an empty database from a array.

Syntax

DBCREATE(<cDatabase>, <aStruct>,[<cDriver>],[<lOpen>],
[<cAlias>]) --> NIL

Arguments

<cDatabase> Name of database to be create

<aStruct> Name of a multidimensional array that contains the a database structure

<cDriver> Name of the RDD

<lOpenNew> 3-way toggle to Open the file in New or Current workarea:

NILThe file is not opened.
TrueIt is opened in a New area.
FalseIt is opened in the current area.
<cAlias> Name of database Alias

Returns

DBCREATE() always returns NIL.

Description

This function creates the database file specified as <cDatabase> from the multidimensional array <aStruct>.If no file extension is use with <cDatabase> the .DBF extension is assumed. The array specified in <aStruct> must follow a few guidelines when being built prior to a call to DBCREATE():

- All subscripts values in the second dimension must be set to proper values

- The fourth subscript value in the second dimension - which contains the decimal value-must he specified. even 1kw nonnumeric fields.

- The second subscript value in the second dimension-which contains the field data type-must contain a proper value: C, D, L, M or N It is possible to use additional letters (or clarity (e.g., 'Numeric' for 'N'): however, the first letter of this array element must be a proper value.

The DBCREATE( ) function does not use the decimal field to calculate the length of a character held longer than 256. Values up to the maximum length of a character field (which is 65,519 bytes) are stored directly in the database in the length attribute if that database was created via this function. However, a file containing fields longer than 256 bytes is not compatible with any interpreter.

The <cDriver> parameter specifies the name of the Replaceable Da- tabase Driver to use to create the database. If it is not specified, then the Replaceable Database Driver in the current work area is tised. The <lOpenNew> parameter specifies if the already created database is to be opened, and where. If NIL, the file is not opened. If True, it is opened in a New area, and if False it is opened in the current area (closing any file already occupying that area). The <cAlias> parameter specifies the alias name for the new opened database
Examples
      function main()

      local nI, aStruct := { { "CHARACTER", "C", 25, 0 }, ;
                          { "NUMERIC",   "N",  8, 0 }, ;
                          { "DOUBLE",    "N",  8, 2 }, ;
                          { "DATE",      "D",  8, 0 }, ;
                          { "LOGICAL",   "L",  1, 0 }, ;
                          { "MEMO1",     "M", 10, 0 }, ;
                          { "MEMO2",     "M", 10, 0 } }

      REQUEST DBFCDX

      dbCreate( "testdbf", aStruct, "DBFCDX", .t., "MYALIAS" )

      RETURN NIL
Status

Ready

Compliance

This function is Not CA-Clipper compliant

Files

Library is rdd Header is Dbstruct.ch

See Also