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

Вниз

Access + ADO   Найти похожие ветки 

 
Ozone ©   (2003-10-30 16:20) [0]

Создаю в Access"e БД с одной, например, таблицей.
Пусть у нее будут поля (ID, Pole1, Pole2), где ID-первичный ключ.
У полей Pole1 и Pole2 ставлю значение по умолчанию равное 0.
Коннектюсь к этой БД ч/з ADOConnection и привязываюсь к таблице с помошью например ADOTable.
Проблема в том, что при добавлении новой записи в таблицу и при заполнении только одного поля Pole1, в поле Pole2 ноль не ставится.
Что я делаю не так.


 
Nikolay M. ©   (2003-10-30 16:29) [1]

Pole1 и 2 - целые или строковые?
Как на них установлены ограничения Пустые строки и Обязательное поле (не знаю, как это в англ. версии).


 
Ozone ©   (2003-10-30 16:36) [2]

Эти поля строковые.
На счет ограничений не знаю, а посмотреть не могу (систему переустанавливаю).
Может скажешь как должно быть, а я потом все сделаю.


 
Nikolay M. ©   (2003-10-30 16:46) [3]


> как должно быть

Зависит от решаемой задачи - т.е. какую именно сущность представляет собой эта таблица. Соответственно в одних случаях поля могут быть пустыми (комментарий, например), в других - нет (ФИО клиента).

Двойной клик на TADOTable, Add all fields, у нужного поля выставляешь DefaultExpression и будет тебе счастье.

В твоем случае, если ты добавляешь записи через DBGrid (скорее всего так и есть), на сервер уходит строка
INSERT INTO table_name ( Pole1, Pole2) VALUES ( "", "La-la-la")
и дефолтные значения забиваются пустой строкой, которая явно указана в запросе.
А вот если бы ты сам сделал
INSERT INTO table_name (Pole2) VALUES ("La-la-la")
тогда бы аксес подставил в Pole1 значение по умолчанию, т.е. "0".


 
Ozone ©   (2003-10-31 08:04) [4]

Большое пасиба.



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

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

Наверх




Память: 0.47 MB
Время: 0.026 c
14-66070
Johnny Smith
2003-10-30 09:58
2003.11.20
Вопрос хозяевам: не с вашего ли ведома столько клонов поползло?


3-65771
smu
2003-10-31 08:53
2003.11.20
При работе с двумя TQuery, связанными с одним TDatabase, проподаю


1-65875
sentinel
2003-11-09 11:55
2003.11.20
Доброго времени суток. Как узнать имя шрифта контекстного меню?


1-65995
Denisiy
2003-11-10 15:25
2003.11.20
Звуковой сигнал с MessageDlg


3-65731
KIR
2003-10-31 16:25
2003.11.20
Как лучше хранить денежные значения в IB 6.5 диалект 3?