|
|
|
|
|
для: cheops
(03.02.2012 в 19:37)
| | > это поле автоматически обновляется при выполнении оператора UPDATE
Только если установлено свойство on update CURRENT_TIMESTAMP
> обновится только одно (может сейчас поправили)
не поправили. on update CURRENT_TIMESTAMP может быть по прежнему только у одного поля. Так же как значение по умолчанию CURRENT_TIMESTAMP. | |
|
|
|
|
|
|
|
для: Василий
(03.02.2012 в 23:30)
| |
<?
if($error=="no"){
$result2 = mysql_query("INSERT INTO comment_ege (post,author,text,date)
VALUES ('" . mysql_real_escape_string($id) . "','"
. mysql_real_escape_string($author) . "','" . mysql_real_escape_string($text) . "', NOW() )");
//****
| так по-моему еще проще. Хотя я все время с TIMESTAMP работаю, не знаю как там себя DATETIME ведет. | |
|
|
|
|
|
|
|
для: Василий
(03.02.2012 в 23:30)
| | Это же очень просто. Вместо $date = date("d-m-Y в H:i"); пропишите $date = date("Y-m-d H:i:s");
Вот подробный код:
//Если нет ошибок добавляем в базу
if($error=="no"){
$date = date("Y-m-d H:i:s");
$result2 = mysql_query("INSERT INTO comment_ege (post,author,text,date)
VALUES ('" . mysql_real_escape_string($id) . "','"
. mysql_real_escape_string($author) . "','" . mysql_real_escape_string($text) . "','$date')");
//****
|
| |
|
|
|
|
|
|
|
для: Василий
(03.02.2012 в 23:29)
| | как прописать этот по новому?
//Если нет ошибок добавляем в базу
if($error=="no"){
$date = date("d-m-Y в H:i");
$result2 = mysql_query("INSERT INTO comment_ege (post,author,text,date)
VALUES ('" . mysql_real_escape_string($id) . "','"
. mysql_real_escape_string($author) . "','" . mysql_real_escape_string($text) . "','$date')");
//****
|
| |
|
|
|
|
|
|
|
для: cheops
(03.02.2012 в 19:04)
| | создал поле date1 (формат datetime)
старое поле - date 04-10-2011 в 19:27
новое поле имеет следующее значение date1 2011-10-04 19:27:00 | |
|
|
|
|
|
|
|
для: cheops
(03.02.2012 в 19:37)
| | спасибо, остановлюсь на DATETIME :) | |
|
|
|
|
|
|
|
для: ladan
(03.02.2012 в 19:33)
| | У TIMESTAMP есть особенность, это поле автоматически обновляется при выполнении оператора UPDATE, причем обновляется по дебильному, если у вас два таких поля - обновится только одно (может сейчас поправили). Поэтому если хотите просто хранить дату без затей, то храните её в DATETIME. Если хотите скорости, то храните дату в INT, используя для формирования текущей даты функцию time(). Такое поле в дальнейшем можно будет без труда проиндексировать, да и места оно меньше занимает по сравнению с DATETIME (правда вы не сможете напрямую задействовать возможности MySQL в области времени). Какой бы вариант вы не выбрали, любой из них будет лучше голых строк (и в конечном счете удобнее). | |
|
|
|
|
|
|
|
для: cheops
(03.02.2012 в 19:17)
| | а что лучше TIMESTAMP или DATETIME(и прописывая при вставке в таблицу NOW())? | |
|
|
|
|
|
|
|
для: ladan
(03.02.2012 в 19:13)
| | Когда у вас даты будут в рамках одного месяца (пусть и с разными годами) да, когда у вас данные из разных месяцев и лет накопятся - будет весело :))) Лучше не экспериментируйте, эта мина взрывается неизбежно. Не говоря про то, что у вас лишние данные хранятся, который пусть чуть-чуть но утяжеляют/замедляют таблицу. | |
|
|
|
|
|
|
|
для: cheops
(03.02.2012 в 19:02)
| | у меня ошибок не было, менял дату на 2013 год и все нормально пашет :) | |
|
|
|
|