Страница 1 из 1
					
				проблема с полем типа Дата в БД под Pervasive
				Добавлено: 14 дек 2006, 18:57
				 Rishat
				интересует следующий вопрос:
пишем программу на дельфи которая через ODBC источник вытягивает данные посредством SQL запроса. не получается делать запросы на вывод пустых дат, значение которых NULL (напр. в APPOINTMENTS.DISMISSDATE) и еще другая проблема, при преобразовании поля в строку постоянно ругается на несоответствие типов. подскажите как делать запросы с Null датами.
			 
			
					
				
				Добавлено: 15 дек 2006, 13:19
				 thor
				Насчет APPOINTMENTS.DISMISSDATE не понял.
Если посмотреть структуру на MS SQL, то тип этого поля Int, как и у всех полей с датой, значения NULL ни для одного поля в этой таблице не разрешены.
Во всех полях, где даты нет, стоит 0.
Запрос типа
Select * from dbo.T$Appointments where F$Dismissdate=0
выводит все записи из таблицы, где нет даты
			 
			
					
				
				Добавлено: 15 дек 2006, 15:06
				 Rishat
				проблема с БД под Pervasive, а не MSSQL
			 
			
					
				
				Добавлено: 18 дек 2006, 21:05
				 Sheinina
				Под первасивом пустоту даты можно проверить как longint(data)=0
			 
			
					
				
				Добавлено: 20 дек 2006, 14:11
				 Rishat
				Sheinina
а в Pervasive Control Center как такой запрос написать?
			 
			
					
				
				Добавлено: 20 дек 2006, 14:19
				 Sheinina
				А вот это я не знаю... Я тока из-под supporta запросы пишу...
			 
			
					
				
				Добавлено: 20 дек 2006, 15:20
				 Rishat
				хых.. вот это прокатило в PCC
select dismissdate from appointments where  convert(dismissdate,SQL_CHAR)<>'0000-00-00' order by dismissdate
			 
			
					
				
				Добавлено: 20 дек 2006, 18:09
				 Rishat
				мне бы вот что-то подобное надо соорудить в PCC
select convert(dismissdate,SQL_CHAR)  from appointments where  convert(dismissdate,SQL_CHAR)='0000-00-00' order by dismissdate
вопрос только как.. :Р
			 
			
					
				
				Добавлено: 22 дек 2006, 19:20
				 Rishat
				может кто мне вразумительно сказать, почему в БД Галактики 8.0 под Pervasive SQL 2000i,8.70, в поле с пустой даты сидит значение '0' (под Pervasive 9.5 дык вообще выводит вместо NULL непонятную дату 11/30/0002),а  не NULL, как это должно быть? (исходя из запроса в PCC)