如何将当前日期插入我的数据库?我有一个名为date的专栏来安装它。 我想在插入此内容的同时插入它:
$sql="INSERT INTO `Lines` (Text, PID, Position)
VALUES
('$text','$pid','$position')";
有没有办法在PHPMyAdmin中自动化它,或者这样做是这样的吗?感谢
答案 0 :(得分:7)
如果表格定义的timestamp
列默认设置为CURRENT_TIMESTAMP
,那么您实际上根本不需要做任何事情。否则,NOW()
和CURRENT_TIMESTAMP
将起作用,如:
INSERT INTO t1 (timestamp_column) VALUES (NOW());
CURRENT_TIMESTAMP
和NOW()
之间存在差异,但它可能对您来说太小了。
phpMyAdmin在创建新列时似乎有CURRENT_TIMESTAMP
作为选项。
答案 1 :(得分:4)
INSERT INTO `Lines` (`date`) VALUES (NOW());
答案 2 :(得分:1)
根据您的要求,您也可以这样做
$date=date('d.m.y h:i:s');
然后插入$ date。我的意思是,如果你只想查看日期&时间。否则我也推荐time()。
答案 3 :(得分:0)
否则......如果您使用的是整数,如PHP中常见的那样,只需使用time()
并插入其值与插入其他变量的方式相同,或者使用MySQL的UNIX_TIMESTAMP()
< / p>
答案 4 :(得分:0)
存储时间戳的最佳方法是以GMT / UTC格式的UNIX时间戳整数。这样,无论您,服务器或用户位于何处,都可以随时了解确切的时间。奖励是您可以允许用户设置他们的时区并显示对他们有意义的时间。
$sql = "INSERT INTO `Lines` (`timestamp`) VALUES ('" . time() . "')";
或
$sql = "INSERT INTO `Lines` (`timestamp`) VALUES ( UNIX_TIMESTAMP() )";
如果您选择使用NOW()或CURRENT_TIMESTAMP,请小心,因为它们由数据库服务器及其设置管理。如果您的站点所在的服务器位于一个时区,并且您移动到另一个时区的另一台主机,则所有时间戳都将不正确。使用Unix整数将在应用程序处理时间的任何地方添加一些额外的工作量,但它可以为您提供最高的准确性和最大的灵活性。