如何在数据库表中的单个列中添加数组,以及在laravel 5.2(PHP)中的同一数组列中添加新项

时间:2016-07-31 11:30:26

标签: php mysql laravel laravel-5.2

我正在开发一个项目。在那个项目中我有一个子类别表,包含id,catid,subcat,status columns。我必须在一个列(subcat)中添加一个数组。现在问题是如何在表的单列中添加数组。我必须在将来存储数组的那一行中添加更多项目...(插入到tablename ___________________,其中id = $ id)..

所以请告诉我如何在表的单列中添加数组并更新该数组以供进一步使用。 thankx 问候

2 个答案:

答案 0 :(得分:0)

我不建议您这样做,但您可以使用例如json-encode对该数组进行编码,并将该字符串存储在该列中。这样做的缺点是你不能更新那个数组的“项目”而不用从db中检索它并将其解码为php数组。我建议你看一下支持该功能的MySQL 5.7。 https://dev.mysql.com/doc/refman/5.7/en/json.html

答案 1 :(得分:0)

我建议使用外键来实现这一目标。请参阅下表架构:

mysql> describe categories;
+--------------------+-------------+------+-----+-------------------+----------------+
| Field              | Type        | Null | Key | Default           | Extra          |
+--------------------+-------------+------+-----+-------------------+----------------+
| category_id        | int(11)     | NO   | PRI | NULL              | auto_increment |
| category_name      | varchar(50) | NO   |     | NULL              |                |
| sub_category_id    | int(11)     | YES  |     | 0                 |                |
| created_at         | timestamp   | YES  |     | CURRENT_TIMESTAMP |                |
| updated_at         | timestamp   | YES  |     | CURRENT_TIMESTAMP |                |
+--------------------+-------------+------+-----+-------------------+----------------+

sub_category_id categoriescategory_id <?php namespace App\Models; use Illuminate\Database\Eloquent\Model; class Category extends Model { protected $primaryKey = 'category_id'; protected $fillable = array(''category_name'sub_category_id'); public function Sub_Category(){ return $this->hasOne('App\Models\category','sub_category_id','category_id'); } } 表的引用中。{ 这也可以让您在子类别中拥有多个级别 分类型号:

<beans>
    <bean id="a" class="Employee">
        <property name="b" ref="b" />
    </bean>
    <bean id="b" class="Department">
        <property name="a" ref="a" >
    </bean>
</beans>