Valentina is not RAM-based. Your database can be much larger than the installed RAM. However, the more memory Valentina has to work with, the
faster it will be. Starting from v2 Valentina can use RAM-based Databases and Tables.
Valentina database files are the same for 32-bit and 64-bit modes.
Of course executables are different, like for any other application or library. Although MAC OS X allows to pack few branches of code into single file, we tend to provide different archives for 32 and 64 bit executables and ADKs.
DropTable is expected to be faster, because when you delete record by record, engine checks constraints and links in order to delete linked records. DropTable() simply deletes the table, and tries to do fast operation to cleanup links if any.
Then you must to use regular way of Relational Model with Primary Keys. Valentina DB offers for this Serial32/Serial64 field types. Also you can use Sequences. Please notice that autoincrement in Valentina DB is based on RecID field, so it will reuse values.
NO, record is never moved during its lifetime with normal db operations. This can happen only with the help of Refactoring commands such as COMPACT or Dump/Load. Note, that refactoring operations always take care about synchronization of all ObjectPtr and BinaryLinks in this case.
ObjectPtr field will be created in not complete state. Later you should assign a correct Tagret using VObjectPtr.Target property. You may wish to use this trick to be able create tables having circular reference.
Talking about fld.SetBlaink() notice that exists more often used tbl.SetBlank() method, which you can use in API-way code to prepare Record Buffer before assign new values for new record. fld.SetBlank() assigns value of field to DEFAULT value if it exists, otherwise to NULL if field is nullable, otherwise to something “empty”: zero for numbers, empty string for strings.
fld.put_IsNull() assignes field value to NULL if field is nullable, otherwise to empty value.
blob.DeleteData() removes all segments of a BLOB value. Effectively such BLOB value is same as NULL value.