summaryrefslogtreecommitdiff
path: root/docs/html/xbc3.html
diff options
context:
space:
mode:
Diffstat (limited to 'docs/html/xbc3.html')
-rwxr-xr-xdocs/html/xbc3.html73
1 files changed, 73 insertions, 0 deletions
diff --git a/docs/html/xbc3.html b/docs/html/xbc3.html
new file mode 100755
index 0000000..f2f4a1d
--- /dev/null
+++ b/docs/html/xbc3.html
@@ -0,0 +1,73 @@
+<!DOCTYPE HTML PUBLIC>
+<HTML>
+<TITLE>Xbase DBMS Chapter 3</TITLE>
+<BODY BGCOLOR=#FFFFFF>
+<H1><p align="center">Fields and Strings</p></H1>
+<p align="center">Chapter Updated 11/21/22</p><hr>
+
+<br><br>
+The main objective of this chapter is to provide basic information regarding
+various field types supported by the library.<br><br>
+
+Field names can be up to ten bytes in length and can contain characters, numbers
+or special characters in the name. The field methods are used to manipulate
+the data in a record of a data file. There are several types of fields.<br><br>
+
+
+<TABLE BORDER>
+<CAPTION ALIGN="TOP"><h3>Field Types</H3></CAPTION>
+<TR VALIGN="BASELINE">
+<TR><TH ALIGN="LEFT">Type<TD>Size<TD>Allowable Values<TD>Schema Value
+<TR><TH ALIGN="LEFT">Numeric<TD>0 - 17(include sign and decimal point<TD>+ - . 0 through 9<TD>XB_NUMERIC_FLD
+<TR><TH ALIGN="LEFT">Character<TD>0 - 254<TD>Anything<TD>XB_CHAR_FLD
+<TR><TH ALIGN="LEFT">Date<TD>8<TD>CCYYMMDD<TD>XB_DATE_FLD
+<TR><TH ALIGN="LEFT">Floating Point<TD>0 - 17 (includes sign and decimal point<TD>+ - . 0 through 9<TD>XB_FLOAT_FLD
+<TR><TH ALIGN="LEFT">Logical<TD>1<TD>? Y y N n T t F f (? - uninitialized)<TD>XB_LOGICAL_FLD
+<TR><TH ALIGN="LEFT">Memo<TD>Fixed length portion - 10<br>Variable length 0 - 32760
+<TD>Type III - Text<br>Type IV - Anything<TD>XB_MEMO_FLD
+</TABLE>
+
+<br><br>
+Field names, types and lengths are defined when a data file is created.
+After the file is created, the field characteristics can not be changed. To
+change field characteristics, a new database table must be defined with the new
+field requirements.<br><br>
+
+<h2>Memo Fields</h2>
+
+Memo fields are variable length data fields which are stored in two parts.
+This first part is a ten byte field which is stored
+in the fixed length record of the .DBF file. The variable data is stored in
+a seperate .DBT file in 512 byte blocks. The ten byte field in the fixed
+length portion of the record points to a .DBT block number.<br><br>
+
+There are two versions of memo data files type III and type IV. Type IV
+is more advanced in that released space can be reused and it also
+supports BLOB data. The type III file is older technology, does not
+support dynamic space reclamation and only supports string data.
+See method xbDbf::SetVersion for controlling which version type you are
+using.
+
+<br><br>
+To utilize memo fields, the application program must allocate a buffer
+which is large enough to handle the memo data.<br><br>
+
+<h2>Fields and Field Numbers</h2>
+
+The Xbase routines can access field data via using field names or field
+numbers. Field numbers are numbered 0-n where the first field in a datafile
+is field 0 going through the last field n. Accessing fields by number is
+slightly more efficient than accessing by name.<br><br>
+
+<h2>Strings</h2>
+
+Xbase64 includes support for a string class <em>xbString</em>.
+The xbString class interface was originally derived from the
+<em>Draft Standard C++ Library by P.J. Plauger</em> and modified.
+If you are familiar with other string classes, this one should be similar.
+Strings can be used to manage strings of character data.
+<br><br>
+<hr>
+<p><img src="xbase.jpg"><hr>
+</BODY>
+</HTML>