Страница 1 из 1

новый номер

Добавлено: 11 янв 2007, 23:06
светлый
здрасте, сразу скажу что я тока новичек начинающий и т д
у меня курсовая и мне надо сделать бд в interbase + delphi
проблема в том что я немогу получить новый номер с помощью генератора, генератор создан, таблицы созданы, пишу

Код: Выделить всё

set term !! ;
create trigger "bef_ins_tovar" for "tovar"
active before insert
as
begin
NEW.TOVARID=gen_id(gen_tovar,1);
end!!
set TERM ; !!
set term ^ ;
в ответ

Dynamic SQL Error
SQL error code = -206
Column unknown
NEW.TOVARID
Statement: create trigger "bef_ins_tovar" for "tovar"
active before insert
as
begin
NEW.TOVARID=gen_id(gen_tovar,1);
end

версия ib 6.5
или может есть другой способ получать номер?

Добавлено: 12 янв 2007, 00:06
Merlin
Судя по тому, что остальные идентификаторы заданы в кавыках, поле TOVARID создано таким же образом. Тогда оно становится регистрочувствительным, его теперь всегда надо писать в этих дурацких кавыках и соблюдать тот регистр букв, в котором оно лежит в базе. А раз это курсовой и база скорей всего пустая, я бы на твоём месте её пересоздал всю без этого кавычного гемора.

Добавлено: 12 янв 2007, 00:30
светлый
ого точно так и есть, пасиба, сам бы не допер, думаю не стоит удалять эту тему, у мя будет ещё много вопросов :)

Добавлено: 12 янв 2007, 02:06
светлый
ну вот я и вернуля с новым вопросом :)
все бд создал и теперь при вводе данных в бд через приложение ругается на кириллицу, но в таблицах я указывал кодировку

Код: Выделить всё

CREATE TABLE "TOVAR" 
(
  "TOVARID"	INTEGER NOT NULL,
  "NAME"	VARCHAR(100) CHARACTER SET WIN1251 NOT NULL,
  "PRICE"	INTEGER NOT NULL,
 PRIMARY KEY ("TOVARID")
);
приложение просто вылетает, это надо гдето в самой проге чтонить менять или перехватывать какнить?

Добавлено: 12 янв 2007, 06:45
SAMZ
светлый писал(а):ну вот я и вернуля с новым вопросом :)
все бд создал и теперь при вводе данных в бд через приложение ругается на кириллицу, но в таблицах я указывал кодировку
приложение просто вылетает, это надо гдето в самой проге чтонить менять или перехватывать какнить?
Кодировку необходимо указывать еще и в компонентах, которыми ты пользуешся для организации коннекта с БД. Как это сделать зависит от библиотеки доступа к БД, которую ты используешь.

Добавлено: 12 янв 2007, 07:55
Dimitry Sibiryakov
Аффтар! А не пошел бы ты сразу читать FAQ на этом сайте?..