веб-мастеру блог веб-мастера Статьи Веб-Мастера SEO Tools книги веб-мастеру

IPB

Здравствуйте, гость ( Вход | Регистрация )

 
Ответить в эту темуОткрыть новую тему
> Тип данных в Mysql
sa†ana
сообщение 18.5.2007, 3:24
Сообщение #1


Начинающий
***

Группа: Супер Модераторы
Сообщений: 84
Регистрация: 11.5.2007
Из: World Wide Web
Пользователь №: 81



Здраствуйте, в базе MySQL я создавал таблицы для хранения даты и времени так.

CREATE TABLE date_time (
date VARCHAR(8) NOT NULL,
time VARCHAR(10) NOT NULL)
$date = date("d.m.Y");
$time = date("H:i:s");
INSERT INTO date_time VALUES('$date', '$time');
А потом просто считывал и выводил
echo $date;
echo $time;

Конечно такое хранение времени и даты неправильно, но подругому я не умею. Сегодня лазия по phpMyAdmin я увидел типы:
DATE
TIME
TIMESTAMP
DATETIME и еще парочка...

По названию несложно догадатся что они предназначены для хранения различных типов дат и времени, как мне показалось более всего подходит DATETIME - подскажите как им пользоваться, в каком виде данные записываются, и нужно ли их потом преобразовывать для вывода.


--------------------
Изображение
Чем больше знаем, тем больше знать стремимся... delphi7.info - для delphi'стов... 4479310 - чем смогу тем помогу...
Пользователь в офлайнеКарточка пользователяОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
sashkovishe
сообщение 18.5.2007, 9:11
Сообщение #2


Администратор форума
****

Группа: Администраторы
Сообщений: 397
Регистрация: 3.12.2006
Из: России
Пользователь №: 4



Цитата(satana @ 18.5.2007, 4:24) *

CREATE TABLE date_time (
date VARCHAR(8) NOT NULL,
time VARCHAR(10) NOT NULL)
$date = date("d.m.Y");
$time = date("H:i:s");
INSERT INTO date_time VALUES('$date', '$time');
А потом просто считывал и выводил
echo $date;
echo $time;

Конечно такое хранение времени и даты неправильно, но подругому я не умею.

Почему не правильное?! Очень даже верная запись...
Я например сам лично предпочитаю работать так т.е. с обычным int(11) и тебе советую, записываешь туда date() или time(), так удобнее будет... форматы можно менять и выводить как ты хочешь...


--------------------
Изображение
Think differently...
ICQ: 6-135-294
Пользователь в офлайнеКарточка пользователяОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
sashkovishe
сообщение 18.5.2007, 9:25
Сообщение #3


Администратор форума
****

Группа: Администраторы
Сообщений: 397
Регистрация: 3.12.2006
Из: России
Пользователь №: 4



А вообще, DATETIME поддерживаемый диапазон: от 1000-01-01 00:00:00 до 9999-12-31 23:59:59. Mysql отображает значения DATETIME в формате YYYY-MM-DD HH:MM:SS ... Но как я уже сказал, лучше по моему использовать вышесказанное...


--------------------
Изображение
Think differently...
ICQ: 6-135-294
Пользователь в офлайнеКарточка пользователяОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
gid
сообщение 18.5.2007, 9:29
Сообщение #4


Администратор форума
*****

Группа: Главные администраторы
Сообщений: 623
Регистрация: 27.11.2006
Из: Россия
Пользователь №: 1



Помоему тоже обычный int(11) и php-функция time() намного удобней и лучше, и нет никакой привязки к временной зоне.


--------------------
Пользователь в офлайнеКарточка пользователяОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения

Быстрый ответОтветить в эту темуОткрыть новую тему
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 



- Текстовая версия Сейчас: 11.10.2008, 6:42
^ ВВЕРХ ^

Посетите наши проекты:
Учебники   delphi mysql