mysql 在数据库中设置时间

mysql 在数据库中设置时间,第1张

在创建表的时候是不支持函数的,而且datetime本身是不支持默认是now()的,必须使用timestamp这个类型,如下:

CREATE

TABLE

blogentries

(

blog_id

INT

(100)

PRIMARY

KEY,

author_id

INT

REFERENCES

author

(author_id),

title

TEXT

NOT

NULL,

description

TEXT,

TYPE

NVARCHAR(10)

NOT

NULL,

allowcomment

CHAR(1)

NOT

NULL,

markprivate

CHAR(1)

NOT

NULL,

body

TEXT

NOT

NULL,

datecreated

TIMESTAMP

,

datepublish

TIMESTAMP

,

datemodified

TIMESTAMP

defAULT

CURRENT_TIMESTAMP

ON

UPDATE

CURRENT_TIMESTAMP

)

defAULT

CURRENT_TIMESTAMP

ON

UPDATE

CURRENT_TIMESTAMP就是插入时默认当前时间,更新时更新为当前时间。另外有一个问题就是Mysql目前一个表只支持一个字段有默认当前时间,所以说你的datecreated和datepublish需要在插入函数中处理,例如

insert

blogentries(blog_id,title,datecreated)

values(1,

'help

me',

now())

同理,发表时间也可以用同样的方式插入。

希望能够帮助你。

东京时区是东九区,比我们北京东八区多1个时区,所以+9就是东京时间了

那我们怎么修改,有两种方法,一种是临时的,一种是长久的。

一:通过sql命令临时修改

# 设置全局时区 mysql>set global time_zone = '+8:00'

Query OK, 0 rows affected (0.00 sec)

# 设置时区为东八区 mysql>set time_zone = '+8:00'

Query OK, 0 rows affected (0.00 sec)

# 刷新权限使设置立即生效 mysql>flush privileges

Query OK, 0 rows affected (0.00 sec)

mysql>show variables like '%time_zone%'

+------------------+--------+

| Variable_name | Value |

+------------------+--------+

| system_time_zone | EST |

| time_zone | +08:00 |

+------------------+--------+

2 rows in set (0.00 sec)

二:修改my.cnf实现永久修改

vi /etc/mysql/my.cnf

然后在mysqld下边的配置中添加一行:

default-time_zone = '+8:00'

然后重启mysql

service mysql restart


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/sjk/9860741.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-02
下一篇 2023-05-02

发表评论

登录后才能评论

评论列表(0条)

保存