powered by simpleCommunicator - 2.0.53     © 2025 Programmizd 02
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / Date или datetime?
19 сообщений из 19, страница 1 из 1
Date или datetime?
    #39921895
edward_sh
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Добрый вечер коллеги!
Возник чисто практический вопрос вынесенный в тему топика.
Для моей работы в БД достаточно иметь поле date (дата приема на работу и дата увольнения).
Возникает резонное желание использовать поле типа date.
Работа с БД будет вестись из стороннего приложения.
Есть ли подводные камни в использовании типа date вместо datetime?
...
Рейтинг: 0 / 0
Date или datetime?
    #39921898
TaPaK
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
edward_sh,

минут не будет
...
Рейтинг: 0 / 0
Date или datetime?
    #39921939
Фотография alexeyvg
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
TaPaK
edward_sh,

минут не будет
Это для datetime будет проблема - могут показываться минуты, отдел кадров будет возмущаться :-)
...
Рейтинг: 0 / 0
Date или datetime?
    #39921947
Владислав Колосов
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
edward_sh,

для типа DATE нужен NativeClient, виндовый ODBC вроде бы не поддерживает этот тип. Там то ли конвертация произойдет, то ли отказ, уже не помню.
...
Рейтинг: 0 / 0
Date или datetime?
    #39922066
Фотография SIMPLicity_
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Если "стороннее приложение" будет нормально работать с date вместо datetime, то почему бы и нет.
...
Рейтинг: 0 / 0
Date или datetime?
    #39922100
edward_sh
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Владислав Колосов
edward_sh,

для типа DATE нужен NativeClient, виндовый ODBC вроде бы не поддерживает этот тип. Там то ли конвертация произойдет, то ли отказ, уже не помню.


Добрый день!
Вот примерно про такие подводные камни я и спрашивал.
Потом сиди и гадай, почему программа не работает...
Спасибо!
Может еще что-нибудь всплывет :)
...
Рейтинг: 0 / 0
Date или datetime?
    #39922159
andreymx
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
edward_sh
Добрый день!
Вот примерно про такие подводные камни я и спрашивал.
Потом сиди и гадай, почему программа не работает...
странно это слышать от разработчика
...
Рейтинг: 0 / 0
Date или datetime?
    #39922292
edward_sh
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
andreymx,
А у Вас как разработчика, сразу все программы пишутся идеально и все работает с полпинка?
И не бывает, что вроде все работает как должно, ан нет - где-то косяк...
И ладно, если Вы имеете доступ и к исходнику программы, и к SQL серверу и можете посмотреть,
что уходит из программы, что доходит до сервера и чем он на это все отвечает.
Владислав Колосов привел такой пример, о котором я не знал...
...
Рейтинг: 0 / 0
Date или datetime?
    #39922295
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ну так если в каком-то конкретном ODBC драйвере конкретный косяк, так надо жаловаться его разработчику чтобы пофиксил. ODBC как интерфейс тип даты поддерживает без проблем.
...
Рейтинг: 0 / 0
Date или datetime?
    #39922381
Фотография Focha
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Какая разница какой тип на сервере, вопрос как приложение его обрабатывает. Возможно приложение работает только с датой, а возможно с датой и временем.
...
Рейтинг: 0 / 0
Date или datetime?
    #39922447
edward_sh
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Dimitry Sibiryakov,
Ага, ну пожалуйтесь в Микрософт на их косяки :) и что они их не решают....

To Focha :
Приложение ДОЛЖНО обрабатывать типы данных, как на сервере задумано разработчиком.
Как будет добывать эти сведения разработчик приложения - его проблемы (ну пока и мои).
Я хочу создать пул ХР для программиста, далее его проблемы в разумных пределах, конечно.
Вопрос собственно говоря, сводился к тому, что стоит ли заморачиваться с использованием типа DATE в БД или же не выпендриваться и использовать тип DATETIME для универсальности?
...
Рейтинг: 0 / 0
Date или datetime?
    #39922454
Гавриленко Сергей Алексеевич
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
edward_shВопрос собственно говоря, сводился к тому, что стоит ли заморачиваться с использованием типа DATE в БД или же не выпендриваться и использовать тип DATETIME для универсальности?У богатых свои причуды - хранить 8 байт вместо 3.
...
Рейтинг: 0 / 0
Date или datetime?
    #39922461
TaPaK
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
автор использовать тип DATETIME для универсальности?
та чё уж так, опытные универсальщики сибят в sql_variant
...
Рейтинг: 0 / 0
Date или datetime?
    #39922470
edward_sh
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
TaPaK
автор использовать тип DATETIME для универсальности?

та чё уж так, опытные универсальщики сибят в sql_variant
:) Согласен!
...
Рейтинг: 0 / 0
Date или datetime?
    #39922487
Фотография skyANA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
edward_sh
Я хочу создать пул ХР для программиста, далее его проблемы

Мне на форуме сказали делать так, далее твои проблемы..
...
Рейтинг: 0 / 0
Date или datetime?
    #39922583
istrebitel
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Для примера Delphi, компоненты доступа к БД FireDAC.
Кидаем на форму DataSet FDQuery, прописываем запрос
Код: sql
1.
2.
3.
4.
5.
6.
7.
select
	convert(datetime, getdate()) datetime_type
	, convert(date, getdate()) date_type
	, convert(time, getdate()) time_type
	, convert(datetime2, getdate()) datetime2_type
	, convert(datetimeoffset, getdate()) datetimeoffset_type
	, convert(smalldatetime, getdate()) smalldatetime_type


Без NativeClient (просто чистая Win7)
fieldname datatype classnamedatetime_type ftTimeStamp TSQLTimeStampFielddate_type ftWideString TWideStringFieldtime_type ftWideString TWideStringFielddatetime2_type ftWideString TWideStringFielddatetimeoffset_type ftWideString TWideStringFieldsmalldatetime_type ftTimeStamp TSQLTimeStampField
С NativeClient
fieldname datatype classnamedatetime_type ftTimeStamp TSQLTimeStampFielddate_type ftDate TDateFieldtime_type ftTime TTimeFielddatetime2_type ftTimeStamp TSQLTimeStampFielddatetimeoffset_type ftTimeStamp TSQLTimeStampFieldsmalldatetime_type ftTimeStamp TSQLTimeStampField
Соответственно если мы в дизайне добавим поля, при запуске в другой среде будет ошибка.
...
Рейтинг: 0 / 0
Date или datetime?
    #39922612
Фотография Focha
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
edward_sh

To Focha :
Приложение ДОЛЖНО обрабатывать типы данных, как на сервере задумано разработчиком.
Как будет добывать эти сведения разработчик приложения - его проблемы (ну пока и мои).
Я хочу создать пул ХР для программиста, далее его проблемы в разумных пределах, конечно.
Вопрос собственно говоря, сводился к тому, что стоит ли заморачиваться с использованием типа DATE в БД или же не выпендриваться и использовать тип DATETIME для универсальности?


Приложение вам ничего не ДОЛЖНО, так как разработка ПО и разработка Базы это разные люди, отвечая на ваш вопрос, я бы использовал DATE, если был бы уверен на 100%, не на 99%, а именно на 100%, что приложение без ошибок обработает данный тип и время не нужно будет выводить. Никакие расчеты в точности до минуты не нужны.

А вообще я бы задал Вам другой вопрос.

Почему вы хотите именно Date использовать, нет времени?
DT я использую если нужно работать еще со временем, а в остальных случаях я использую Date, так как мне не важно время, а как мы знаем:
Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
declare @t table (dt datetime)

insert into @t values(getdate())

-- пусто
select * 
from @t
where dt = convert(date,getdate()) -- ничего не вернет, date-->datetime всегда будет YYYYMMDD 00:00:00 

-- не пусто
select * 
from @t
where convert(date,dt) = convert(date,getdate())



И зачем так, проще сделать Date?
...
Рейтинг: 0 / 0
Date или datetime?
    #39922630
rebel25
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
В моём кадрово-зарплатном приложении все даты хранятся только в datetime.
Когда то создавал таблицы с полями date и возникли проблемы в приложении, уже не помню какие.
...
Рейтинг: 0 / 0
Date или datetime?
    #39922659
Ролг Хупин
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
TaPaK
автор использовать тип DATETIME для универсальности?

та чё уж так, опытные универсальщики сибят в sql_variant

sql_variant - это мутная хрень ? извините за простоту формулировки
...
Рейтинг: 0 / 0
19 сообщений из 19, страница 1 из 1
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / Date или datetime?
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]