Hi,
I am using C++Builder6 on WinXPSP3, with Devart's dbExpress driver. I declared a enumeration type called 'professionEnum', which is used by my variable 'profession'. I get an error: 'Cannot access field 'rootcause' as type Text', if I try and enter a value into the enum field. 1. I create the table as follows: CREATE TABLE IF NOT EXISTS status( statusCode BIGINT PRIMARY KEY, description VARCHAR(50), level SMALLINT, rootCause rootCauseEnum, material VARCHAR(100), actionTaken VARCHAR(50) ) 2. I add an enum type 'rootCauseEnum' as follows: AnsiString SQL; SQL = "CREATE TYPE "; SQL = SQL + edtEnumerationType->Text; // My entry: rootCauseEnum SQL = SQL + " AS ENUM ( "; SQL = SQL + edtEnumerationList->Text; // My entry: 'none','unknown','elec','oil' SQL = SQL + " )"; int errorCode = frmDataModule->eyeConnection->ExecuteDirect(SQL); 3. I add a record to the status table from the command prompt which works fine as follows: eye=# INSERT INTO status VALUES( 100002, 'Running', 0, 'none', 'Not applicable', 'NA'); 4.I add a record to the status table from C++Builder as follows: I have an edit box for every field, as I enter the following all is fine: statusCode=100003 description=Stopped level=0 As I enter any of the following into the rootCause field: rootCause=none rootCause=1 I get the following error: Cannot access field 'rootcause' as type Text. Therefore before I apply the updates to the table, i get the error. The field 'rootCause' is indicated as (Memo) in run-time. This worked fine when I used MySQL. With MySQL I can enter rootCause=none or rootCause=1 Thanks. Charl |