ThinkPHP增加数据库字段后插入数据为空的解决办法
今天用ThinkPHP做了一个简单的商品发布系统,数据库本来只有四个字段id,name,url,image。id是主键,name是商品名称,url是商品链接,image是商品图片,做的差不多了,发现还少一个字段,那就是价格,然后建立了字段,类型是decimal(8,2),意思是共8位,小数点占两位,然后执行之后,页面显示数据插入成功,但是查看数据库字段为0.00,如下图:
链接纯属虚构,上不去哈,,,于是弄了好长时间,还是不行,然后怀疑是不是ThinkPHP对数字支持不是太好,然后干脆将类型修改成VARCHAR了,并且价格加上了单引号,结果还是一样,纳闷了,,
$Gouwu=M('Gouwu'); //实例化对象
$data['name']="淘宝女装连衣裙";
$data['url']="http://item.taobao.com/item.htm?id=2822929";
$data['image']="http://www.baidu.com/sjsh.jpg";
$data['jiage']='6.82';
//执行插入数据data方法
if($Gouwu->data($data)->add())
echo "插入成功";
然后重启数据库和服务器,结果还是一样,接着用原生代码测试,
$conn=mysql_connect("localhost","root","wodemima") or die('连接错误:'.mysql_error());
if($conn)
//echo "数据库连接成功";
{
mysql_select_db('webappsceshi',$conn);
mysql_query('set names utf8');
$sql="INSERT INTO tb_gouwu (name,url,image,jiage) VALUES ('$data[name]','$data[url]','$data[image]','$data[jiage]')";
if(mysql_query($sql,$conn)){
echo "插入成功";
}
}
运行之后没问题,数据库也更新了数据,这时感觉是不是ThinkPHP内部出问题了,但是挺成熟的一个框架应该挺完善的呀,又折腾了一会,发现应用目录下有个Runtime,如下图:
感觉这个文件夹可能是运行时的缓存,我对ThinkPHP整个目录分布不太了解,只知道简单的写点类和方法,查了一下就是运行时的缓存文件,具体就不多说了,进去:
全选文件,然后删除就行了,下一次运行程序的时候会自动更新,然后再次运行写好的程序,插入成功,看一下数据果然插入成功了,见下图:
这虽然是个小问题,但对于我不懂原理所以开始没有想到,所以记录下来,遇事多思考,基础的东西是一定要掌握好的,也希望能帮助到大家。
ThinkPHP增加数据库字段后插入数据为空的解决办法的更多相关文章
- 标注工具doccano导出数据为空的解决办法
地址:https://github.com/taishan1994/doccano_export doccano_export 使用doccano标注工具同时导出实体和关系数据为空的解决办法.docc ...
- JAVA:当数据库重启后连接池没有自动识别的解决办法
今天发现服务器上的一个服务程序出现问题,软件抛出:Connection reset by peer: socket write error 无法正常提供服务,找了一下原因,原来是因为数据库服务器重启, ...
- .NET 调用java webservice保存datetime类型数据为空的解决办法
问题描述: 用C#.NET调用Java开发的WebService时,先在客户端封装的带有int属性的对象,当将该对象传到服务器端时,服务器端可以得到 string类型的属性值,却不能得到i ...
- Easy Populate批量管理下载产品数据为空的解决办法
把原来的先删除:http://aaaaacom/admin/easypopulate.php?langer=remove
- EF Core中,通过实体类向SQL Server数据库表中插入数据后,实体对象是如何得到数据库表中的默认值的
我们使用EF Core的实体类向SQL Server数据库表中插入数据后,如果数据库表中有自增列或默认值列,那么EF Core的实体对象也会返回插入到数据库表中的默认值. 下面我们通过例子来展示,EF ...
- C# 批量插入表SQLSERVER SqlBulkCopy往数据库中批量插入数据
#region 帮助实例:SQL 批量插入数据 多种方法 /// <summary> /// SqlBulkCopy往数据库中批量插入数据 /// </summary> /// ...
- SQL语句的使用,SELECT - 从数据库表中获取数据 UPDATE - 更新数据库表中的数据 DELETE - 从数据库表中删除数据 INSERT INTO - 向数据库表中插入数据
SQL DML 和 DDL 可以把 SQL 分为两个部分:数据操作语言 (DML) 和 数据定义语言 (DDL). SQL (结构化查询语言)是用于执行查询的语法. 但是 SQL 语言也包含用于更新. ...
- HBase 高性能获取数据(多线程批量式解决办法) + MySQL和HBase性能测试比较
摘要: 在前篇博客里已经讲述了通过一个自定义 HBase Filter来获取数据的办法,在末尾指出此办法的性能是不能满足应用要求的,很显然对于如此成熟的HBase来说,高性能获取数据应该不是问题. ...
- 修改计算机名或IP后Oracle10g无法启动服务的解决办法
修改计算机名或IP后Oracle10g无法启动服务的解决办法 遇到的问题,问题产生原因不详.症状为,windows服务中有一项oracle服务启动不了,报出如下错误. Windows 不能在 本地计算 ...
随机推荐
- Devexpress-1 DataGrid控件
参考资料: 使用XtraGrid自定义列计算 DEV GridControl小结 实现对两列求和后作为新的列
- Linux命令之dos2unix
Linux命令之dos2unix (2011-09-22 11:24:06) 转载▼ 标签: 杂谈 Linux命令之dos2unix - 将DOS格式文本文件转换成UNIX格式 用途说明 dos2 ...
- PHP数据类型转换
转自:http://www.tianzhigang.com/article.asp?id=280 PHP的数据类型转换属于强制转换,允许转换的PHP数据类型有: (int).(integer):转换成 ...
- Maven初级学习(三)常用命令
依赖关系查看 mvn dependency:list #列表形式展示依赖 mvn dependency:tree #层级关系展示依赖 mvn dependency:analyze #依赖分析 声明周期 ...
- C#深入浅出 关键字(一)
1.this this关键字用于指示当前对象“自己”,来看一个例子,了解什么时候需要用this class Star { String name; int age; public void SetIn ...
- 2013nanjignB
B - Poor Warehouse Keeper Time Limit:1000MS Memory Limit:32768KB 64bit IO Format:%I64d & ...
- JSON 问题
{"statusCode":"300","message":"栏目插入出现故障==bannerInfoService.add 栏目 ...
- CSS使用自定义光标样式-遁地龙卷风
测试环境是chrome浏览器 Mozilla/5.0 (Windows NT 6.1) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/43.0.2357. ...
- DOM之节点层次
1.1 Node类型 DOM1级定义了一个Node接口,该接口将由DOM中的所有节点类型实现.这个Node接口在JS中是作为Node类型实现的:除了IE之外,其他浏览器可访问这个类型.JS中的所有节点 ...
- autolayout的各种坑
xocde7的autolayout 在viewDidLoad之前, 使用frame改变布局是没有用的, 简单的视图才可以使用autolayout, 稍微复杂写的都要使用代码来编写 获取当前view的宽 ...