不废话了,直接给大家贴代码了,代码很简单,都是比较常见的sql语句,具体内容请看下文。
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
|
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);
|
如上三个表:用户头像表、产品表、用户表
怎样在模型中建立关联?
1
2
3
4
5
6
7
8
9
10
11
|
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
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
|
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值来跟字段里的内容来比较呢
------解决思路----------------------
用模糊查询吧
1
|
$ where = array( '该字段' =>array( 'LIKE' , '%' . $ID . '%' ));
|