|
|
|
Datetime или нет ?
|
|||
|---|---|---|---|
|
#18+
Есть ли приимущества при использовании в таблице поля содержащего дату и время ( как datetime в MSSQL или timestamp в Firebird). Не лучше ли использовать к примеру целочисленное значение как количестве секунд с 01.01.1970 (как в Java или С) Если данные извлекается то в вышеупомянутых языках получение соответсвующей переменной элементарно Если данные извлекаются в более других языках с другим представлением даты времени то, и здесь преобразование не на много сложнее - сдвиг даты от точки отсчета на кол-во секунд и разницу между точкой и 01/01/1970. Процесс превращения серверной Д/В в переменную Д/В языка в этом случае всеравно происходит и вряд ли происходит быстрее но при этом менне контролируемо. А полученная целочисленная переменная она и есть целочисленная переменная от капризов сервера/ODBC/JDBC/ ИлиКтоЕщеТам мало зависит. Зато при использовании значения в запросе всегда и во всех языках - дату в число, число в строку. А для даты и времени нужно преобразовать дату и время в строку и потом еще скорей всего нужно воспользоваться функцией преобразования строки в Д/В на сервере, а значит текст запроса будет зависить от специфики СУБД. Думаю что сортировка и выборка по критерию по целочисленному полю будет не медленней чем по Д/В То есть мне кажется что целочисленное представление Д/В делает структуру БД независимой от конкретной СУБД и при этом оболочку для данных не делает сильно зависимой от конкретного языка программирования даже если используется точка отсчета конкретного языка. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.03.2006, 19:54 |
|
||
|
Datetime или нет ?
|
|||
|---|---|---|---|
|
#18+
Datetime он и в Африке DateTime . Какая разница, что за СУБД. Те различия в синтаксисе, это такие мелочи, которые не сыграют роли при смене СУБД. А на интерфейсную часть будет значительная нагрузка - это явный отказ от стандартных компонент. Смысл имеет преобразовать в Int или SmallInt , когда дату требуется включить в индекс. Иметь в индексе 2 байта вместо 8 - это существенно. И не обязательно выражать в секундах. Часто достаточно в месяцах, например, начиная с 2000-го года. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.03.2006, 20:23 |
|
||
|
Datetime или нет ?
|
|||
|---|---|---|---|
|
#18+
да во всех базах оно как инт и хранится как смысл городить? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.03.2006, 23:00 |
|
||
|
Datetime или нет ?
|
|||
|---|---|---|---|
|
#18+
В MS SQL - как numeric. Но это совершенно не важно. Иоанн Джипегов ... капризов сервера/ODBC/JDBC/ ИлиКтоЕщеТам ... У вышеперечисленых капризов не бывает. Бывает неумение их настроить. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.03.2006, 00:25 |
|
||
|
Datetime или нет ?
|
|||
|---|---|---|---|
|
#18+
К примеру в оболочке имеется параметр полученный от пользователя в переменную DTVar типа Д/В необходимо выбрать из таблицы записи для которых поле DTField типа Д/В после значения этой переменной. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.03.2006, 00:39 |
|
||
|
Datetime или нет ?
|
|||
|---|---|---|---|
|
#18+
А потом подключись каким-нибудь отчетником типа CristalReports и огреби кучу удовольствия ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.03.2006, 10:43 |
|
||
|
Datetime или нет ?
|
|||
|---|---|---|---|
|
#18+
Иоанн ДжипеговНе лучше ли использовать к примеру целочисленное значение как количестве секунд Нет, не лучше. Усложнение на пустом месте и без какой бы то ни было выгоды. По сути есть предложение в нескольких сотнях мест программы добавить конвертацию в/из этого формата. Пожалуй, неплохим аналогом является предложение хранить datetime в виде xml-изированной строки. Иоанн Джипегов Если данные извлекается то в вышеупомянутых языках получение соответсвующей переменной элементарно Угу. Например, берешь любое высокоуровневое API и начинаешь ему объяснять, что это не int, а datetime, поэтому дефолтовым редактором для него должен быть календарик, формат вывода тоже не совсем int-овый... Иоанн Джипегов Процесс превращения серверной Д/В в переменную Д/В языка в этом случае всеравно происходит и вряд ли происходит быстрее но при этом менне контролируемо. Главное - он происходит верно. Этого достаточно. Иоанн ДжипеговА полученная целочисленная переменная она и есть целочисленная переменная от капризов сервера/ODBC/JDBC/ ИлиКтоЕщеТам мало зависит. Ну, если предположить, что есть плохая технология (или, что более вероятно - неумение работать с этой технологией), то это нисколько не повод придумывать костыль. Это повод: 1. Научиться работать с этой. 2. Выкинуть эту и взять хорошую. Иоанн ДжипеговЗато при использовании значения в запросе всегда и во всех языках - дату в число, число в строку. Чч-чего? Не понял :( Иоанн ДжипеговА для даты и времени нужно преобразовать дату и время в строку и потом еще скорей всего нужно воспользоваться функцией преобразования строки в Д/В на сервере, Ну если так работать, то неудивительно, что начинаются проблемы. Вы случаем никогда не пробовали работать с датой именно как с датой, без каких бы то ни было дополнительных конвертаций? Иоанн ДжипеговТо есть мне кажется что целочисленное представление Д/В делает структуру БД независимой от конкретной СУБД Этот идиотизм потребует куда более сильных решений, нежели отказ от datetime. Впрочем, как раз для datetime я почти не видел специфики в работе с разными серверами. Иоанн Джипегови при этом оболочку для данных не делает сильно зависимой от конкретного языка программирования даже если используется точка отсчета конкретного языка. Подозреваю, Вам стоит отойти от теоретических размышлений в сторону решения практических задач с использованием подходящих для этого средств. Лично меня float-формат datetime устраивает куда больше, нежели указанный Вами целочисленный. Например потому, что я знаю: если мне потребуется записывать тысячные доли секунды, я буду использовать все тот же формат, а не колбасить всю ранее наработанную технологию. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.03.2006, 12:36 |
|
||
|
Datetime или нет ?
|
|||
|---|---|---|---|
|
#18+
Иоанн ДжипеговК примеру в оболочке имеется параметр полученный от пользователя в переменную DTVar типа Д/В необходимо выбрать из таблицы записи для которых поле DTField типа Д/В после значения этой переменной. Совершенно стандартная задача. Никаких конвертаций, никаких проблем. Или код Код: plaintext слишком сложен? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.03.2006, 12:38 |
|
||
|
Datetime или нет ?
|
|||
|---|---|---|---|
|
#18+
Пожалуйста, покажите мне как в MS SQL будет выглядеть таблица в которой находится ежедневное расписание движения ну... поездов хотябы... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.03.2006, 12:55 |
|
||
|
Datetime или нет ?
|
|||
|---|---|---|---|
|
#18+
gardenmanПожалуйста, покажите мне как в MS SQL будет выглядеть таблица в которой находится ежедневное расписание движения ну... поездов хотябы...А как расписание может быть связано с Datetime? По-моему, здесь обсужались вопросы хранения даты с временем. А в расписании дата как-то нигде не применима. Разве только в специальных ограничениях - типа, вводится с 7-го марта 2006 года. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.03.2006, 13:07 |
|
||
|
Datetime или нет ?
|
|||
|---|---|---|---|
|
#18+
alexeyvg gardenmanПожалуйста, покажите мне как в MS SQL будет выглядеть таблица в которой находится ежедневное расписание движения ну... поездов хотябы...А как расписание может быть связано с Datetime? По-моему, здесь обсужались вопросы хранения даты с временем. А в расписании дата как-то нигде не применима. Разве только в специальных ограничениях - типа, вводится с 7-го марта 2006 года. Вы мне пожалуйста дайте оператор CREATE TABLE который создает такую таблицу, а потом мы порассуждаем где должна быть дата, а где должно быть время в MS SQL и вообще какой дебил изобрел отвечал за встроенные типы в этой "крутой" "промышленной" базе данных. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.03.2006, 13:19 |
|
||
|
Datetime или нет ?
|
|||
|---|---|---|---|
|
#18+
gardenmanВы мне пожалуйста дайте оператор CREATE TABLE который создает такую таблицу, а потом мы порассуждаем где должна быть дата, а где должно быть время в MS SQL и вообще какой дебил изобрел отвечал за встроенные типы в этой "крутой" "промышленной" базе данных. Я это всё понимаю, просто как это с вопросом топика связано??? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.03.2006, 13:21 |
|
||
|
Datetime или нет ?
|
|||
|---|---|---|---|
|
#18+
softwarer Иоанн ДжипеговК примеру в оболочке имеется параметр полученный от пользователя в переменную DTVar типа Д/В необходимо выбрать из таблицы записи для которых поле DTField типа Д/В после значения этой переменной. Совершенно стандартная задача. Никаких конвертаций, никаких проблем. Или код Код: plaintext слишком сложен? Нет, только Вы забыли упомянуть что параметр :date_something нужно еще установить. Точно также еще одна строка на каждый параметр в каждом запросе. Те самые сотни строк конвертаций, хотя и независящих от субд. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.03.2006, 14:21 |
|
||
|
Datetime или нет ?
|
|||
|---|---|---|---|
|
#18+
Иоанн ДжипеговНет, только Вы забыли упомянуть что параметр :date_something нужно еще установить. Точно также еще одна строка на каждый параметр в каждом запросе. Те самые сотни строк конвертаций, хотя и независящих от субд.А чем вас так тревожат эти "сотни строк конвертаций"? Никому они до сих пор не мешали, а вас беспокоят. И откуда эти цифры про сотни строк? Каких, кстати, строк? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.03.2006, 14:48 |
|
||
|
Datetime или нет ?
|
|||
|---|---|---|---|
|
#18+
Иоанн ДжипеговНет, только Вы забыли упомянуть что параметр :date_something нужно еще установить. Точно также еще одна строка на каждый параметр в каждом запросе. Те самые сотни строк конвертаций, Не конвертаций, а максимум "неявных конвертаций". ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.03.2006, 15:11 |
|
||
|
|

start [/forum/topic.php?fid=32&msg=33585525&tid=1545378]: |
0ms |
get settings: |
8ms |
get forum list: |
13ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
143ms |
get topic data: |
10ms |
get forum data: |
2ms |
get page messages: |
54ms |
get tp. blocked users: |
1ms |
| others: | 215ms |
| total: | 452ms |

| 0 / 0 |
