更新前。
mysql> select parcel_id,type, status ,accepted_at,accepted_user,submitted_at,submitted_user, updated_at from parcel_deliveries;
+---------------+------+--------+---------------------+---------------+---------------------+----------------+---------------------+
| parcel_id | type | status | accepted_at | accepted_user | submitted_at | submitted_user | updated_at |
+---------------+------+--------+---------------------+---------------+---------------------+----------------+---------------------+
| RI013502995TH | 1 | 1 | 2015-09-29 15:01:44 | hnong | 2015-09-29 17:19:56 | hnong | 2015-09-30 16:50:11 |
| EN064142823TH | 1 | 1 | 2015-10-02 16:17:39 | hnong | 2015-10-02 16:48:24 | hnong | 2015-10-02 17:12:39 |
| EN064142823TH | 2 | 1 | 2015-10-02 16:39:43 | hnong1 | 2015-10-02 16:48:24 | hnong | 2015-10-02 17:12:39 |
+---------------+------+--------+---------------------+---------------+---------------------+----------------+---------------------+
3行(0.00秒)
更新记录,我打算只更新1行(parcel_id = EN064142823TH,类型= 2)
$a = App\Parcel_delivery::where('parcel_id', 'EN064142823TH')
->where('type', '=', 2)
->where('postal_code', '10170')
->orderBy('created_at', 'desc')->first();
=> App\Parcel_delivery {#829
parcel_id: "EN064142823TH",
type: 2,
status: 1,
accepted_at: "2015-10-02 16:39:43",
accepted_user: "hnong1",
submitted_at: "2015-10-02 16:48:24",
submitted_user: "hnong",
destination_id: null,
person_type: null,
signature: null,
comment: "",
run_no: null,
}
>>> $a->status = 5;
=> 5
>>> $a->save(); => true
更新后。
mysql> select parcel_id,type, status ,accepted_at,accepted_user,submitted_at,submitted_user, updated_at from parcel_deliveries;
+---------------+------+--------+---------------------+---------------+---------------------+----------------+---------------------+
| parcel_id | type | status | accepted_at | accepted_user | submitted_at | submitted_user | updated_at |
+---------------+------+--------+---------------------+---------------+---------------------+----------------+---------------------+
| RI013502995TH | 1 | 1 | 2015-09-29 15:01:44 | hnong | 2015-09-29 17:19:56 | hnong | 2015-09-30 16:50:11 |
| EN064142823TH | 1 | 5 | 2015-10-02 16:17:39 | hnong | 2015-10-02 16:48:24 | hnong | 2015-10-02 17:14:43 |
| EN064142823TH | 2 | 5 | 2015-10-02 16:39:43 | hnong1 | 2015-10-02 16:48:24 | hnong | 2015-10-02 17:14:43 |
+---------------+------+--------+---------------------+---------------+---------------------+----------------+---------------------+
3行(0.00秒)
我也不知道为什么另一条记录也会更新(parcel_id = EN064142823TH,type = 1)。
请建议。非常感谢你。
答案 0 :(得分:0)
您的表缺少唯一的主键,因此Eloquent无法将一条记录与另一条记录区分开来,因此无法应用更新。在表中添加一个autoincrement id主键字段,我认为这个问题将得到解决。