mysql中时间日期 datetime字段保存日期出现0000-00-00

正确的php sql语句写法应该是: 

 

 代码如下 复制代码
$sql = "insert into table(datetime) values('".date("Y-m-d h:i:s",time())."')"; //datetime字段的类型为“datetime”,

注意后面要插入的数据是字符串要加“单引号”。
这样就没错了,时间日期类型插入数据库之前要格式化,否则就出现插入的全是0000-00-00的问题。

个人建义,大家保存时间时最好使用int类型保存time()生成的日期这样操作会更方便。

时间: 2024-09-13 17:12:41

mysql中时间日期 datetime字段保存日期出现0000-00-00的相关文章

mysql中时间和日期函数详解(1/3)

一.MySQL 获得当前日期时间 函数 1.1 获得当前日期+时间(date + time)函数:now()  代码如下 复制代码 mysql> select now(); +–-------+ | now() | +–-------+ | 2008-08-08 22:20:46 | +–-------+ 除了 now() 函数能获得当前的日期时间外,MySQL 中还有下面的函数:  代码如下 复制代码 current_timestamp() ,current_timestamp ,localt

MySQL 中查找含有目标字段的表的方法_Mysql

复制代码 代码如下: SELECT TABLE_SCHEMA,TABLE_NAME FROM information_schema.`COLUMNS` WHERE COLUMN_NAME='字段名字' 参考:MySQL中,一个字段在多张表都存在,怎么用sql语句一次性查询这些表呢

MySQL中使用表别名与字段别名的基本教程_Mysql

MySQL 表别名(Alias)SQL 表别名 在 SQL 语句中,可以为表名称及字段(列)名称指定别名(Alias),别名是 SQL 标准语法,几乎所有的数据库系统都支持.通过关键字 AS 来指定. 表别名语法: SELECT column FROM table AS table_alias 上述 SQL 执行后的效果,给人感觉是对 table_alias 表进行查询,但实际上对单表做简单的别名查询通常是无意义的.一般是对一个表要当作多个表来操作,或者是对多个表进行操作时,才设置表别名. 表别

mysql中合并两个字段的方法分享_Mysql

例如:select (a+b) as c from 表 类型也一致都是varchar型的,可就是显示不正确. 直到concat() MySQL中concat函数 下面通过一个例子介绍MySQL中的concat函数的使用方法,比如select concat('11','22','33'). MySQL中concat函数 使用方法: CONCAT(str1,str2,-) 返回结果为连接参数产生的字符串.如有任何一个参数为NULL ,则返回值为 NULL. 注意: 如果所有参数均为非二进制字符串,则

mysql中删除字符串或字段中空格函数

在mysql中提供了ltrim,rtrim函数来删除字符的首毛空格那么如果我要删除字符如"abc fdsa"应该如何做来,下面我们来看教程 ltrim 函数 代码如下  mysql> select concat('.', ltrim(' ddd '), '.'); rtrim函数 代码如下  mysql> select concat('.', rtrim(' ddd '), '.'); trim 字符串函数,实在是强大.它不仅能消除字符串首尾部的空格,还可以消除我们指定的任

sql语句中如何将datetime格式的日期转换为yy-mm-dd格式_MsSql

如果在asp中我们可以用year(date())这样的格式在sql语句中,不知道这样的效率怎么样不过是个方法 复制代码 代码如下: select substring(convert(char,registdate,120),1,10) as registdate from tbuser

sql语句中如何将datetime格式的日期转换为yy-mm-dd格式

如果在asp中我们可以用year(date())这样的格式 在sql语句中,不知道这样的效率怎么样不过是个方法 复制代码 代码如下: select substring(convert(char,registdate,120),1,10) as registdate from tbuser

MySQL中给自定义的字段查询结果添加排名的方法_Mysql

 我正在用 MySQL 客户端的时候,突然想到如果可以给查询结果添加排名该多好啊,然后就找到了一个简单的解决办法. 下面是一个示例表的数据:  然后我们要根据 Roll_No 字段进行排序并给出排名,我们首先必须定义一个初始值为0的变量,然后在查询结果中使用这个变量. 如下面的代码:   SET @counter=0; SELECT @counter:=@counter+1 AS Rank,LastName,Roll_no as Roll FROM Students ORDER BY Roll_

mysql 中如何取得汉字字段的各汉字首字母_Mysql

DROP FUNCTION IF EXISTS `getPY`; DELIMITER ;; CREATE FUNCTION `getPY`(in_string VARCHAR(65534)) RETURNS mediumtext CHARSET utf8 BEGIN DECLARE tmp_str VARCHAR(65534) charset gbk DEFAULT '' ; #截取字符串,每次做截取后的字符串存放在该变量中,初始为函数参数in_string值 DECLARE tmp_len S