Search code examples
hsqldb

HSQLDB Invalid character value for cast


I have two tables:

CREATE TABLE PUBLIC.CLUSTER (
    ID INTEGER NOT NULL,
    NAME VARCHAR(255) NOT NULL,
    PRIMARY KEY (ID)
);
CREATE TABLE PUBLIC.KEYWORD (
    ID INTEGER NOT NULL,
    TEXT INTEGER NOT NULL,
    CLUSTER_ID INTEGER,
    MONTH_REQUEST INTEGER,
    CLICK_COST INTEGER,
    PRIMARY KEY (ID)
);

When I do:

INSERT INTO PUBLIC.CLUSTER (NAME) VALUES ('ff');

it runs without issue but when I do:

INSERT INTO PUBLIC.KEYWORD (TEXT) VALUES ('xcv');

I'm getting

ERROR: data exception: invalid character value for cast Error Code: -3438

What is wrong with it?


Solution

  • It looks like you made a mistake in the CREATE TABLE statement. The column is defined as INTEGER, which obviously cannot accept xcv (even though it is 95 written in Roman numerals).

    TEXT INTEGER NOT NULL,