Я создал таблицу Derby DB из NetBeans 7.1, используя окно «create table» внутри IDE. один из столбцов должен иметь бит типа (я хочу хранить логические данные - 1/0). Когда я добавил этот столбец, я использовал его как «char для бит данных». когда я добавляю строки, используя окно «Вставить записи» IDE, строки добавляются, но когда я пытаюсь добавить строки, используя SQL-команды (которые, как я в конечном итоге добавлю данные в таблицу из моего java-кода), он всегда бросает ошибка. если я попробую INSERT INTO APP.TEMP (ID, BOOL) VALUES (3, 0)
, ответ будет Columns of type 'CHAR() FOR BIT DATA' cannot hold values of type 'INTEGER'.
, и если я попробую INSERT INTO APP.TEMP (ID, BOOL) VALUES (3, '0')
, ответ будет Columns of type 'CHAR() FOR BIT DATA' cannot hold values of type 'CHAR'.
. Я думал, что для этого стоит создать таблицу с кодом SQL (CREATE TABLE...
) и установить этот столбец просто как «бит», но когда я это сделаю, ответ я получаю Syntax error: Encountered "bit" at line 7, column 8.
бит типа данных внутри derby DB (созданный в NetBeans)
так как я могу иметь булевое поле в DB Derby? или я должен отказаться и просто использовать целое число?
веселит, Эрез
благодарственное, но как же, когда я пытаюсь это - CREATE TABLE Games ( ID Int NOT NULL PRIMARY KEY, white_player_id INT NOT NULL, black_player_id INT NOT NULL, winner_id INT, активное логическое NOT NULL, start_date метка NOT NULL, end_date метка времени ) Я получаю сообщение об ошибке - «Синтаксическая ошибка: BOOLEAN» – eRez
может быть, потому что я использую Derby 10.2? я читал, что только с версии 10.7 поддерживается булевское. если это так - я его обновляю? – eRez
Да, Derby 10.2 ОЧЕНЬ старый. Модернизация проста; вот как: http://db.apache.org/derby/docs/10.8/devguide/cdevupgrades.html –