ThinkPHP3.2.3, 这个错误是什么意思?

php中文网
发布: 2016-07-06 13:54:06
原创
1771人浏览过

下面是代码,同样的代码,同样的数据库表,在本地的wamp环境,就报下面的错误。
服务器上的lamp,就没问题。
最近突然有这个错误的,过去的几个月,都正常的。

  1. 问题是,我的数据库表里,根本就没alias这个字段,它是哪里来的?

    立即学习PHP免费学习笔记(深入)”;

    boardmix博思白板
    boardmix博思白板

    boardmix博思白板,一个点燃团队协作和激发创意的空间,集aigc,一键PPT,思维导图,笔记文档多种创意表达能力于一体,将团队工作效率提升到新的层次。

    boardmix博思白板 39
    查看详情 boardmix博思白板
<code>//写数据库
//---------------------
$data['user_mail'] = $user_mail;
$data['user_name'] = $user_name;
$data['pass_word'] = md5($pass_word);
$data['last_time'] = date('Y-m-d H:i:s');
$addRes = $usr -> add($data);
\Think\log::record("6");</code>
登录后复制

ERR: SQLSTATE[HY000]: General error: 1364 Field 'alias' doesn't have a default value

回复内容:

下面是代码,同样的代码,同样的数据库表,在本地的wamp环境,就报下面的错误。
服务器上的lamp,就没问题。
最近突然有这个错误的,过去的几个月,都正常的。

  1. 问题是,我的数据库表里,根本就没alias这个字段,它是哪里来的?

    立即学习PHP免费学习笔记(深入)”;

<code>//写数据库
//---------------------
$data['user_mail'] = $user_mail;
$data['user_name'] = $user_name;
$data['pass_word'] = md5($pass_word);
$data['last_time'] = date('Y-m-d H:i:s');
$addRes = $usr -> add($data);
\Think\log::record("6");</code>
登录后复制

ERR: SQLSTATE[HY000]: General error: 1364 Field 'alias' doesn't have a default value

字段缓存导致的,你把runtime目录下面的所有东西全部删掉,不包括runtime目录本身。但是前提是你的调试模式是false,这样才会使用缓存,另外,我建议你给alias字段增加一个默认值,否则,可能是开发环境与线上环境不一致的原因。

这跟tp毛关系都没有。
善用google, http://blog.csdn.net/god8816/article/details/8593419

是否开启了mysql的 strict mode ?

你出现的这个错误说明你的插入语句缺少对alias的值, 然后表结构中又没有给alias字段定义默认值;
不应该通过该 mysql的sql_mode来隐藏问题或通过数据库隐式处理问题。

相关标签:
PHP速学教程(入门到精通)
PHP速学教程(入门到精通)

PHP怎么学习?PHP怎么入门?PHP在哪学?PHP怎么学才快?不用担心,这里为大家提供了PHP速学教程(入门到精通),有需要的小伙伴保存下载就能学习啦!

下载
来源:php中文网
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
最新问题
开源免费商场系统广告
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新 English
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号