数据库所遇问题
问题一:数据查询问题
一个表中没有主键,另外两个表的主键作为外键共同组成主键,在根据表中的第二个外键查询时没有数据。
例:
- 表1 t_auction id auctionName img delStatus
- 表2 t_group id groupName content
- 表3 t_auction_group groupId auctionId createTime
假设:查询表3中collectionId=2时,发现可以查询到数据,当查询groupId=1时即使数据表中有数据也是无法查出数据的。
ThinkPHP 查询为例, 只是想从表3中查询到auctionId='某一个数据'时,可以使用数组条件查询到,巧妙的用到thinkphp中模版-内置标签-比较标签进行处理(只要groupId大于等于0就可以处理)。
这样就可以两个同时一致查询。
$map=array("auctionId"=>$delld,"groupId"=>array('egt',1));
$delRelation=$auctionGoods->where($map)->select();
问题二:数据更新问题
在处理假删除时,可以使用sql语句进行处理更改数据表中delStatus的数值,
$sql="update cu_collection set delStatus=0 where id=$goodsId";
$mysql=$collection->execute($sql);
但其实在thinkphp中也可以使用数据更新的处理方法
//修改auction表中的delStatus为0
$data['delStatus']=0;
$delStatus = $auction->where(array('auctionId'=>$auctionId))->save($data);
总结
2017年7月27日 项目学习
好好学习,天天向上,今天也是
网友评论