求教:我的sql更新语句问题出在哪了

lukylfm 2010-06-28 06:56:25
web_pattern 表中有date_recent,rework_success属性,
我下面的sql语句把rework_success数据插入进去了,可date_recent却没有,执行完sql语句date_recent在库中的结果为0000-00-00
我的sql语句问题出在哪了


$date_recent=date("Y-m-d");
$rework_success=$rework_success+1;


$sql="update web_pattern set date_recent=".$date_recent.",rework_success=".$rework_success." where url_id=$url_id";
mysql_query($sql) or die($sql."</br>".mysql_error());

...全文
82 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
wwwwb 2010-06-29
  • 打赏
  • 举报
回复
日期在MYSQL中要用单引号
ACMAIN_CHM 2010-06-28
  • 打赏
  • 举报
回复
update web_pattern set date_recent=2010-06-28,rework_success=6 where url_id=335

等同于

update web_pattern set date_recent=1976 ,rework_success=6 where url_id=335

注意数据类型!否则MYSQL怎么能分清 2010-10 是 2000 还是2010年10月?


MySQL官方文档 http://dev.mysql.com/doc/refman/5.1/zh/index.html
lukylfm 2010-06-28
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 iihero 的回复:]
用单引号括起来试试
$sql="update web_pattern set date_recent='".$date_recent."',rework_success=".$rework_success."
[/Quote]

好了,试了一下,可以插入日期了,可是原因是什么呢,为什么加入 ‘’ 就可以了
lukylfm 2010-06-28
  • 打赏
  • 举报
回复
[Quote=引用 2 楼 acmain_chm 的回复:]
echo $sql

贴出来看一下你的内容是什么? 另外你的这几个字段的数据类型是什么?日期型还是文本型?
[/Quote]
打印出来为:
update web_pattern set date_recent=2010-06-28,rework_success=6 where url_id=335

date_recent类型为date,rework_success为 text
lukylfm 2010-06-28
  • 打赏
  • 举报
回复
[Quote=引用 3 楼 zuoxingyu 的回复:]
打印出你的SQL命令,然后直接执行,这样容易发现问题。
[/Quote]

打印出来:“update web_pattern set date_recent=2010-06-28,rework_success=6 where url_id=335”执行 还是日期没 插进去,

date_recent类型是date
zuoxingyu 2010-06-28
  • 打赏
  • 举报
回复
打印出你的SQL命令,然后直接执行,这样容易发现问题。
ACMAIN_CHM 2010-06-28
  • 打赏
  • 举报
回复
echo $sql

贴出来看一下你的内容是什么? 另外你的这几个字段的数据类型是什么?日期型还是文本型?
iihero_ 2010-06-28
  • 打赏
  • 举报
回复
用单引号括起来试试
$sql="update web_pattern set date_recent='".$date_recent."',rework_success=".$rework_success."

56,677

社区成员

发帖
与我相关
我的任务
社区描述
MySQL相关内容讨论专区
社区管理员
  • MySQL
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧