Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Базы";
Текущий архив: 2003.07.31;
Скачать: [xml.tar.bz2];

Вниз

Значения по умолчнию   Найти похожие ветки 

 
Cranium   (2003-07-08 20:15) [0]

Не подставляются значения по умолчанию в поля где они опредлены вот к примеру таблица....

CREATE TABLE GROUP_AND_USER (
ID_OBJECT INTEGER NOT NULL,
ID_PARENT INTEGER,
COUNT_CHILDREN INTEGER DEFAULT 0
);
Что характерно из моего приложения не подставляются, а из IBexpert"а пожалуйста.... Использую IDX IBDataSet.... В приложении при вставке COUNT_CHILDREN ни чего не присваивается...


 
Zacho   (2003-07-09 08:05) [1]

Дело в том, что default значение подставляется только тогда, когда запрос имеет вид INSERT INTO TABLE GROUP_AND_USER (ID_OBJECT,ID_PARENT) VALUES (:ID_OBJECT, :ID_PARENT) В твоем же случае происходит выполнение запроса INSERT INTO TABLE GROUP_AND_USER (ID_OBJECT,ID_PARENT, COUNT_CHILDREN) VALUES (:ID_OBJECT, :ID_PARENT, :COUNT_CHILDREN) , где :COUNT_CHILDREN=NULL. Поэтому после выполнения этого запроса в поле COUNT_CHILDREN оказывается NULL.
Решить эту проблему можно несколькими способами:
1. Написать триггер BEFORE INSERT следующего вида:
CREATE TRIGGER GROUP_AND_USER_BI0 FOR GROUP_AND_USER
ACTIVE BEFORE INSERT POSITION 0
AS
BEGIN
IF (NEW.COUNT_CHILDREN IS NULL) THEN NEW.COUNT_CHILDREN=0;
END

2. В обработчике события OnNewRecord датасета присваивать 0 этому полю.
Ну и еще можно варианты придумать, эти просто первые, пришедшие мне в голову.


 
Zacho   (2003-07-09 08:15) [2]


> Zacho © (09.07.03 08:05)

Естественно, слово TABLE в запросах лишнее :) Название таблицы я просто скопировал, и не обратил внимание, что туда вкралось TABLE :-))


 
KDS   (2003-07-10 16:44) [3]

>COUNT_CHILDREN INTEGER DEFAULT 0

ЧТОБЫ ПОДСТАВЛЯЛОСЬ НАДО ДОПИСАТЬ not null в конце строки
всего лишь, а не городить триггеры и прочее



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

Форум: "Базы";
Текущий архив: 2003.07.31;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.44 MB
Время: 0.008 c
14-100924
Михаил_
2003-07-13 22:45
2003.07.31
Помогите выбрать LCD монитор


14-100942
Князь Мышкин
2003-07-15 12:13
2003.07.31
Как на Делфи написать свою внеплатформенную операционную систему?


1-100811
DimaS
2003-07-17 13:42
2003.07.31
Как переименовать файл или группу файлов по маске?


1-100765
Damir
2003-07-16 16:31
2003.07.31
Control вне экрана...


3-100559
OlegL
2003-07-07 17:19
2003.07.31
DB file





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
Английский Французский Немецкий Итальянский Португальский Русский Испанский