代码很简单,都是比较常见的sql语句,具体内容请看下文。
CREATE TABLE `test_avatar` (
`uid` int(11) unsigned NOT NULL DEFAULT '0',
`avatar` varchar(255) NOT NULL DEFAULT '',
PRIMARY KEY (`uid`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8;
INSERT INTO `test_avatar` VALUES (1,'./Uploads/admin.jpg');
CREATE TABLE `test_pro` (
`id` int(11) unsigned NOT NULL AUTO_INCREMENT,
`uid` int(11) unsigned NOT NULL DEFAULT '0',
`name` varchar(255) NOT NULL DEFAULT '',
PRIMARY KEY (`id`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8;
INSERT INTO `test_pro` VALUES (1,1,'产品1'),(2,1,'产品2');
CREATE TABLE `test_user` (
`id` int(11) unsigned NOT NULL AUTO_INCREMENT,
`username` varchar(50) NOT NULL DEFAULT '',
`tel` int(11) unsigned NOT NULL DEFAULT '0',
PRIMARY KEY (`id`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8;
INSERT INTO `test_user` VALUES (1,'admin',110);
如上三个表:用户头像表、产品表、用户表
怎样在模型中建立关联?
class ProModel extends RelationModel{
protected $_link=array(
'Avatar'=>array(
'mapping_type'=>self::HAS_ONE,
'class_name'=>'Avatar',
'foreign_key'=>'uid',
'mapping_fields'=>'avatar',
'as_fields'=>'avatar',
),
)
}
试过用HAS_ONE、BELONGS_TO、HAS_MANY、MANY_TO_MANY都不行,求大神指点
------解决思路----------------------
Model下建立ProModelModel.class.php
class ProModelModel extends ViewModel {
public $viewFields = array(
'test_avatar'=>array(
'id',...
),
'test_pror'=>array(
'id',...
'_on'=>''
),
'test_pror'=>array(
'id',...
'_on'=>''
),
);
}
Thinkphp中SQL语句有关问题及解决办法
请问,在THINKPHP中,数据表里有个字段,字段的内容形式为 {1,2,3,4,5}
那么SQL语句里怎么将获得的ID值来跟字段里的内容来比较呢
------解决思路----------------------
用模糊查询吧
$where = array('该字段'=>array('LIKE', '%' . $ID . '%'));