如何获取当前日期&;MySQL中的时间?

如何获取当前日期&;MySQL中的时间?,mysql,sql,datetime,Mysql,Sql,Datetime,我是否可以在手动查询中使用DATETIME之类的值或命令来插入当前日期和时间 INSERT INTO servers ( server_name, online_status, exchange, disk_space, network_shares ) VALUES( 'm1', 'ONLINE', 'ONLINE', '100GB', 'ONLINE' 'DATETIME' ) 末尾引用的DATETIME值是我要添加当前日期和时间的地方。您可以使用NOW(): 是的,您可以使用C

我是否可以在手动查询中使用DATETIME之类的值或命令来插入当前日期和时间

INSERT INTO servers (
  server_name, online_status, exchange, disk_space, network_shares
) VALUES(
  'm1', 'ONLINE', 'ONLINE', '100GB', 'ONLINE' 'DATETIME' 
)
末尾引用的DATETIME值是我要添加当前日期和时间的地方。

您可以使用
NOW()


是的,您可以使用
CURRENT\u TIMESTAMP()
命令


请参见此处:

使用当前时间戳()立即()


将日期时间替换为要用于插入时间的列名。

您不仅可以使用
now()
,还可以使用
current\u timestamp()
localtimestamp()
$rs = $db->Insert('register',"'$fn','$ln','$email','$pass','$city','$mo','$fil'","'f_name','l_name=','email','password','city','contact','image'");
显示时间戳不正确的主要原因是使用单引号插入NOW()!在MySQL Workbench中它对我不起作用,因为这个IDE为MySQL函数添加了单引号,我一下子就认不出来了)


不要像MySQL Workbench中那样使用带有单引号的函数。它不起作用。

尽管有许多公认的答案,但我认为这种方法也是可行的:

创建您的“服务器”表,如下所示:

CREATE TABLE `servers`
(
      id int(11) NOT NULL PRIMARY KEY auto_increment,
      server_name varchar(45) NOT NULL,
      online_status varchar(45) NOT NULL,
      _exchange varchar(45) NOT NULL, 
      disk_space varchar(45) NOT NULL,
      network_shares varchar(45) NOT NULL,
      date_time datetime NOT NULL DEFAULT CURRENT_TIMESTAMP
);
INSERT INTO servers (server_name, online_status, _exchange, disk_space, network_shares)
VALUES('m1', 'ONLINE', 'ONLINE', '100GB', 'ONLINE');
你的插入语句应该是:

CREATE TABLE `servers`
(
      id int(11) NOT NULL PRIMARY KEY auto_increment,
      server_name varchar(45) NOT NULL,
      online_status varchar(45) NOT NULL,
      _exchange varchar(45) NOT NULL, 
      disk_space varchar(45) NOT NULL,
      network_shares varchar(45) NOT NULL,
      date_time datetime NOT NULL DEFAULT CURRENT_TIMESTAMP
);
INSERT INTO servers (server_name, online_status, _exchange, disk_space, network_shares)
VALUES('m1', 'ONLINE', 'ONLINE', '100GB', 'ONLINE');
我的环境:

CREATE TABLE `servers`
(
      id int(11) NOT NULL PRIMARY KEY auto_increment,
      server_name varchar(45) NOT NULL,
      online_status varchar(45) NOT NULL,
      _exchange varchar(45) NOT NULL, 
      disk_space varchar(45) NOT NULL,
      network_shares varchar(45) NOT NULL,
      date_time datetime NOT NULL DEFAULT CURRENT_TIMESTAMP
);
INSERT INTO servers (server_name, online_status, _exchange, disk_space, network_shares)
VALUES('m1', 'ONLINE', 'ONLINE', '100GB', 'ONLINE');

我在MySQL Workbench 6.2(版本6.2.5.0构建397 64位)上做了上面的例子。在数据库设计中,我强烈建议使用Unixtime以获得一致性和索引/搜索/比较性能

UNIX_TIMESTAMP() 
人们总是可以在事后格式化,以最方便的方式进行国际化

FROM_ UNIXTIME (unix_timestamp, [format ])

İ如果将默认值更改为
CURRENT_TIMESTAMP
则效率更高

ALTER TABLE servers MODIFY COLUMN network_shares datetime NOT NULL DEFAULT CURRENT_TIMESTAMP;
正确答案是

通过将命令行参数设置为
True
,我们可以更改此行为并使
NOW()
的行为与
SYSDATE()
相同

请注意,
NOW()
(别名为
CURRENT\u TIMESTAMP()
)与
SYSDATE()
的区别在于微妙的方式:

SYSDATE()返回它执行的时间。这与 behavior for NOW(),它返回一个指示 语句开始执行的时间。(在存储的 函数或触发器,NOW()返回函数或 触发语句开始执行。)

如所示,最好使用
DEFAULT
子句创建表,以便在插入新行时自动使用时间戳填充列:

date_time datetime NOT NULL DEFAULT SYSDATE()

如果希望当前日期的格式为,则可以使用。例如:

select now(3), sysdate(3), unix_timestamp();
会让步

+-------------------------+-------------------------+------------------+
| now(3)                  | sysdate(3)              | unix_timestamp() |
+-------------------------+-------------------------+------------------+
| 2018-11-27 01:40:08.160 | 2018-11-27 01:40:08.160 |       1543282808 |
+-------------------------+-------------------------+------------------+
相关的:


NOW(),请参阅。。。请下次至少对你的问题进行一些研究,这可以很容易地用谷歌搜索到(因此我只是对这个问题投了否决票)。我的问题更多的是针对我应该如何在上面发布的语法中使用它。请看方济各的答案。但这是非常非常基本的,它只是一个函数调用。因此,同样,在发布问题之前,您应该对该问题进行更多的研究,并且您可能希望阅读一些关于SQL.ironic的说明。当你努力寻找答案时,你会。。。这个答案#1054-字段列表中的未知列“stamp”-我有什么遗漏吗?用字段名替换stamp,真的。不要只是复制和粘贴。如果是“日期”字段类型,你也可以使用
curdate()
你应该简短地解释你的答案。这个答案实际上意义不大!
+-------------------------+-------------------------+------------------+
| now(3)                  | sysdate(3)              | unix_timestamp() |
+-------------------------+-------------------------+------------------+
| 2018-11-27 01:40:08.160 | 2018-11-27 01:40:08.160 |       1543282808 |
+-------------------------+-------------------------+------------------+