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

Вниз

(Не)Подстановка Default значений в IBase.   Найти похожие ветки 

 
Vemer   (2003-09-21 11:25) [0]

Создаём в IBase такую талицу:

CREATE TABLE Tovar(PIN Integer Not Null Primary key, T_Name Char(40), T_Kolvo SmallInteger Default 0);

Однако при вставке новой записи заветный нолик в T_Kolvo не появляется. Что я делаю не так?


 
Zacho   (2003-09-21 11:55) [1]

Все делаешь правильно. А дело в компонентах доступа. Значение по умолчанию присвоилось бы этому полю при выполнении запроса INSERT INTO TOVAR (PIN,T_NAME) VALUES (:PIN,:T_NAME) , а TIBDataSet (или что там у тебя) выполняет запрос INSERT INTO TOVAR (PIN,T_NAME, T_KOLVO) VALUES (:PIN,:T_NAME,:T_KOLVO), в к-ром значение параметра :T_KOLVO равно NULL, соответственно и в поле TKOLVO записывается NULL.
Как с этим бороться ? Написать триггер, или присваивать значение полю в событии OnNewRecord, или установить св-во поля датасета DefaultExpression.


 
Vemer   (2003-09-21 12:39) [2]

Delphi ни причем (пока).
Вставку я делал прямо из IbConsole ( Table - Properties - Data).

Обработчик OnNewRecord в Delphi написан (и даже работает), но нафига его делать, если в Ibase должен работать Default. Или он только при INSERT INTO и т.п. срабатывает?

Щас буду ковырять DefaultExpression :).


 
Zacho   (2003-09-21 13:01) [3]

Ну а как думаешь, на чем написана IBConsole ?
Вообще, посоветовал бы пользоваться чем-нибудь более другим, например - IBExpert ( http://www.ibexpert.com )



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

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

Наверх




Память: 0.44 MB
Время: 0.007 c
1-27425
Санёк
2003-09-30 16:49
2003.10.09
Приветствую МАСТЕРОВ!


3-27343
MJ
2003-09-19 23:18
2003.10.09
динамический запрос


14-27696
vidiv
2003-09-12 06:29
2003.10.09
Как определить кто печатал на сетевой принтер


14-27718
Islander
2003-09-21 11:19
2003.10.09
Разработка Shareware


9-27296
KRIVOY
2003-04-05 20:11
2003.10.09
Кто-нибудь знает куда надо кидать glscene.inc при





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