FourQ uses a series of generic data-types internally that map to specific column data-types depending on the database in question.
| Very much a work in progress... |
| data type | mysql | mssql | postgresql | oracle | Notes |
|---|---|---|---|---|---|
| boolean | tinyint(1) | ||||
| date | datetime | ||||
| numeric | decimal(10,2) | ||||
| string | varchar(255) | ||||
| nstring | varchar(255) | ||||
| uuid | varchar(50) | ||||
| variablename | varchar(64) | ||||
| color | varchar(20) | ||||
| varchar(255) | |||||
| longchar | longtext |
I am just beginning to learn about farcry. So I do not know a lot about farcry at this point. So, I am making an educated guess for the Oracle part with reference to Oracle 9.2.
boolean – There is not a boolean type used for table columns. Although, the boolean type can be used with Oracle's PL/SQL database programming language within packages, procedures, and functions, boolean types are not stored in the tables. I guess you would create a column type of number and store 1 or 0 or type char(1)/varchar2(1) with values 'T' or 'F'.
date – Oracle has two types for this, Date and Timestamp. The date type stores date and/or time values with precision in seconds. For example, the date type can store the following values:
2006-01-30 (YYYY-MM-DD)
2006-01-30 06:45:30 (YYYY-MM-DD HH:MI:SS)
The Timestamp type allows precision to fractional seconds as in the following example:
2006-05-11 09:26:50.124
Numeric - Number(p,s): Number having precision p and scale s. The precision p can range from 1 to 38. The scale s can range from -84 to 127 (Oracle docs).
String - varchar2(255)
Nstring - nvarchar2(255)
Uuid - varchar2(255)
Variable name - varchar2(64)
Color - varchar2(20)
Email - varchar2(255)
Longchar - clob or nclob (max size is 4 gigabytes)
I hope this will be helpful. Let me know if I need to clarify anything.