Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2004.12.26;
Скачать: CL | DM;

Вниз

Ошибка при добавлении записи   Найти похожие ветки 

 
kolos_rus   (2004-11-24 15:32) [0]

Имеется тригер и генератор для заполнения ключевого поля в таблице. При добавлении записи выдается ошибка : Поле ID должно иметь значение. Тригер что ли не срабатывает? И как это обойти.


 
Johnmen ©   (2004-11-24 15:52) [1]

Просто не указывать это поле в insert.
Или Required = False


 
kolos_rus   (2004-11-24 15:57) [2]

Поле в insert не указано. А что это такое Required и где его искать?


 
Johnmen ©   (2004-11-24 16:02) [3]

Свойство TField.
А как вставляешь ?


 
Rule ©   (2004-11-24 16:03) [4]

kolos_rus   (24.11.04 15:57) [2]
в твоем наследнике TCustom Field  или в самой базе (смотря де поставил, скорее всего второе)


 
kolos_rus   (2004-11-24 16:44) [5]

Использую IBDataSet. Описаны поля.
Ibdataset1.append;
ibdataset1first_time.asdatatime:=date;
ibdataset1.post;


 
Rule ©   (2004-11-24 17:39) [6]

код инсетрСКУЭль и скрипт таблицы в базе в студию


 
kolos_rus   (2004-11-25 09:01) [7]

Скрипт

CREATE GENERATOR GEN1;

CREATE TABLE JURNAL (
   ID          INTEGER NOT NULL,
   TIME_FIRST  TIMESTAMP,
   TIME_LAST   TIMESTAMP,
   TIME_RAB    INTEGER,
   TIME_INT    INTEGER,
   SUMMA       DECIMAL(15,2)
);

/******************************************************************************/
/***                              Primary Keys                              ***/
/******************************************************************************/

ALTER TABLE JURNAL ADD CONSTRAINT PK_JURNAL PRIMARY KEY (ID);

/******************************************************************************/
/***                                Triggers                                ***/
/******************************************************************************/

SET TERM ^ ;

/* Trigger: JURNAL_BI0 */
CREATE TRIGGER JURNAL_BI0 FOR JURNAL
ACTIVE BEFORE INSERT POSITION 0
AS
begin
 /* Trigger text */
 if (new.id is null) then
 new.id = gen_id(gen1,1);
end
^

SET TERM ; ^

Добавление записи из DELPHI в [5]


 
kolos_rus   (2004-11-25 09:02) [8]

insert into JURNAL
 (TIME_FIRST, TIME_LAST, TIME_RAB, TIME_INT, SUMMA)
values
 (:TIME_FIRST, :TIME_LAST, :TIME_RAB, :TIME_INT, :SUMMA)


 
Johnmen ©   (2004-11-25 09:42) [9]

>kolos_rus

А в SELECT"е небось поле ID получаешь ?
Тогда добавь его в инсерт, но не заполняй.


 
Rule ©   (2004-11-25 09:50) [10]

В свойствах Датасета есть такое GeneratorField, вот заполни там все, почитай должно быть все понятно


 
kolos_rus   (2004-11-25 10:23) [11]

Спасибо! GeneratorField помог, хотя я всегда считал, что достаточно тригера в базе. Ерунда какая-то.


 
Lenulja   (2004-11-26 17:37) [12]

Priwetik! Ljudi pomogite ja pischu w ankete komentarii naschimaju dobawit", a menja vykidiwaet na glawnuju i pischetsja " oschibka dobawlenija Nr.1"



Страницы: 1 вся ветка

Текущий архив: 2004.12.26;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.037 c
3-1101271587
Simba_max
2004-11-24 07:46
2004.12.26
БД


11-1084528134
dimon1979
2004-05-14 13:48
2004.12.26
UpDown


3-1101819424
DuchmanSoft
2004-11-30 15:57
2004.12.26
Много пользовательская база


14-1102018582
syte_ser78
2004-12-02 23:16
2004.12.26
Активация WinXP


1-1102705953
Muhan
2004-12-10 22:12
2004.12.26
Как программно сделать файл скрытым?





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский