Navigation: ISAM File Drivers > Clarion Database Driver >====== Clarion:Supported Commands and Attributes ====== | |
File Attributes | Supported | |
CREATE | Y | |
DRIVER(filetype [,driver string]) | Y | |
NAME | Y | |
ENCRYPT | Y | |
OWNER(password) | Y1 | |
RECLAIM | Y | |
PRE(prefix) | Y | |
BINDABLE | Y | |
THREAD | Y8 | |
EXTERNAL(member) | Y | |
DLL([flag]) | Y | |
OEM | Y | |
File Structures | Supported | |
INDEX | Y | |
KEY | Y | |
MEMO | Y | |
BLOB | N | |
RECORD | Y | |
Index, Key, Memo Attributes | Supported | |
BINARY | Y9 | |
DUP | Y | |
NOCASE | Y | |
OPT | Y | |
PRIMARY | Y | |
NAME | Y | |
Ascending Components | Y | |
Descending Components | N | |
Mixed Components | N | |
Field Attributes | Supported | |
DIM | Y | |
OVER | Y | |
NAME | Y | |
File Procedures | Supported | |
BOF(file) | Y2 | |
BUFFER(file) | N | |
BUILD(file) | Y | |
BUILD(key) | Y | |
BUILD(index) | Y | |
BUILD(index, components) | Y | |
BUILD(index, components, filter) | N | |
BYTES(file) | Y | |
CLOSE(file) | Y | |
COPY(file, new file) | Y | |
CREATE(file) | Y | |
DUPLICATE(file) | Y | |
DUPLICATE(key) | Y | |
EMPTY(file) | Y | |
EOF(file) | Y2 | |
FLUSH(file) | Y | |
LOCK(file) | Y | |
NAME(label) | Y | |
OPEN(file, access mode) | Y | |
PACK(file) | Y | |
POINTER(file) | Y3 | |
POINTER(key) | Y3 | |
POSITION(file) | Y4 | |
POSITION(key) | Y4 | |
RECORDS(file) | Y | |
RECORDS(key) | Y | |
REMOVE(file) | Y | |
RENAME(file, new file) | Y | |
SEND(file, message) | Y | |
SHARE(file, access mode) | Y | |
STATUS(file) | Y | |
STREAM(file) | Y | |
UNLOCK(file) | Y | |
Record Access | Supported | |
ADD(file) | Y10 | |
ADD(file, length) | N | |
APPEND(file) | Y | |
APPEND(file, length) | N | |
DELETE(file) | Y | |
GET(file,key) | Y | |
GET(file, filepointer) | Y | |
GET(file, filepointer, length) | N | |
GET(key, keypointer) | Y | |
HOLD(file) | Y | |
NEXT(file) | Y | |
NOMEMO(file) | Y | |
PREVIOUS(file) | Y | |
PUT(file) | Y10 | |
PUT(file, filepointer) | Y | |
PUT(file, filepointer, length) | N | |
RELEASE(file) | Y | |
REGET(file,string) | Y | |
REGET(key,string) | Y | |
RESET(file,string) | Y | |
RESET(key,string) | Y | |
SET(file) | Y | |
SET(file, key) | Y | |
SET(file, filepointer) | Y | |
SET(key) | Y | |
SET(key, key) | Y | |
SET(key, keypointer) | Y | |
SET(key, key, filepointer) | Y | |
SKIP(file, count) | Y | |
WATCH(file) | Y | |
Transaction Processing | Supported5 | |
LOGOUT(timeout, file, …, file) | Y6,7 | |
COMMIT | Y | |
ROLLBACK | Y | |
Null Data Processing | Supported | |
NULL(field) | N | |
SETNULL(field) | N | |
SETNULL(file,field) | N | |
SETNONNULL(field) | N |
Notes
1 We recommend using a variable password that is lengthy and contains special characters because this more effectively hides the password value from anyone looking for it. For example, a password like “dd….#$…*&” is much more difficult to “find” than a password like “SALARY.”
To specify a variable instead of the actual password in the Owner Name field of the File Properties dialog, type an exclamation point (!) followed by the variable name. For example: !MyPassword.
2 These functions are supported but not recommended due to the lack of support in other file systems. NEXT and PREVIOUS post Error 33 if you attempt to read beyond the end of the file.
3 POINTER() returns a record number.
4 POSITION(file) returns a STRING(4). POSITION(key) returns a STRING the size of the key fields + 4 bytes.
5 The RECOVER switch must be “armed” at the beginning of your program in order to support transaction processing. See Driver Strings for more information on the RECOVER function.
6 LOGOUT has the effect of LOCKing the file. See also PROP:Logout in the Language Reference.
7 You cannot LOGOUT an aliased file and its primary file at the same time.
8 THREADed files consume additional file handles for each thread that accesses the file.
9 OEM conversion is not applied to BINARY MEMOs. The driver assumes BINARY MEMOs are zero padded; otherwise, space padded.
10 Prior to Clarion 2.003 in 16-bit programs under Microsoft operating systems, writes (ADD, PUT) did not correctly flush operating system buffers. This problem is corrected with Clarion 2.003 and higher, so that writes are slower but safer. To implement the pre 2.003 behavior, use STREAM and FLUSH.