Вниз
Скачать: CL | DM;

Запрос   Найти похожие ветки 

 
_toltec   (2003-03-13 11:10) [0]

FireBird

Есть таблица
create table TEST
(
F1 varchar(10),
F2 Integer
);

в ней данные

F1 F2

test1 10
test1 null

пишу запрос

select F1, F2 from Test
where (F1 = :PF1) and (F2 = :PF2);

1. PF1 = test1 и PF2 = 10
все нормально
2. PF1 = test1 и PF2 = null
ничего невозращает

Объясните пожалуйста почему во втором случает ничего невозращат.


 
Соловьев ©   (2003-03-13 11:12) [1]


> 2. PF1 = test1 и PF2 = null

is NULL


 
_toltec   (2003-03-13 11:29) [2]

А если без is Null


 
Соловьев ©   (2003-03-13 11:32) [3]

F1 - join(Left, Right)


 
DarkGreen ©   (2003-03-13 11:36) [4]

> А если без is Null

Ни как.

1. Почитай на ibase.ru про логику работы IB с NULLABLE полями, и про то, что их не советуют использовать
2. Cоздавай все поля в таблицах как not null default ЧТО_ТО , тогда не придется извращаться с запросами.


 
DarkGreen ©   (2003-03-13 11:38) [5]

2 Соловьев © (13.03.03 11:32)
Ну да, так можно, только в данном случае, это изврат, ИМХО :-)


 
_toltec   (2003-03-13 11:41) [6]

А если это Блоб - поле то что тогда присваевать по умолчанию?


 
Anatoly Podgoretsky ©   (2003-03-13 11:41) [7]

_toltec (13.03.03 11:10)
Потому, что не выполнено второе условие (F2 = :PF2)


 
DarkGreen ©   (2003-03-13 13:06) [8]

Если у тебя в блобе текс, то присваивай пустую строку


 
_toltec   (2003-03-13 13:15) [9]

А если не текст тогла что ?


 
zacho ©   (2003-03-13 13:29) [10]


> _toltec (13.03.03 13:15)
> А если не текст тогла что ?

Ну 0, например, в общем, то, что ты будешь интерпретировать как пустое значение



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

Скачать: CL | DM;



Память: 0.47 MB
Время: 0.012 c
3-100150
Silver_
2003-03-11 14:55
2003.03.31
Допросить базу данных


9-100137
Alek Aaz
2002-10-30 08:10
2003.03.31
Высшая математика.


7-100470
Александр К
2003-02-01 23:06
2003.03.31
Самомодифицирующийся код


1-100271
Romul
2003-03-18 17:27
2003.03.31
Перемещение по листам в книге Excel


3-100175
kalliopiy
2003-03-11 14:34
2003.03.31
TRxDBGrid




   Наверх