8.增删改操作
<pre><code class="language-php">一.新增数据
1. 使用 insert()方法可以向数据表添加一条数据,对应表中的字段名加上内容
$data = [
'username' => '辉夜',
'password' => '123',
'gender' => '女',
'email' => 'huiye@163.com',
'price' => 90,
'details' => '123',
'create_time' => date('Y-m-d H:i:s')
];
Db::name('user')->insert($data); 将数据定义为$data ,在此调用</code></pre>
<ol>
<li>
<p>如果新增成功,insert()方法会返回一个 1 值;
$flag = Db::name('user')->insert($data);
if ($flag) return '新增成功!';</p>
</li>
<li>
<p>如果修改数组中包含主键,那么可以直接修改;主键是表中唯一的
$data = [
'username' => '李白',
'id' => 38
];
Db::name('user')->update($data)</p>
</li>
<li>
<p>使用 inc()方法可以对字段增值, dec()方法可以对字段减值;
Db::name('user')->inc('price')->dec('price', 3)->update($data);</p>
</li>
<li>
<p>增值和减值如果同时对一个字段操作,前面一个会失效; </p>
</li>
<li>
<p>使用 exp()方法可以在字段中使用 mysql 函数;
Db::name('user')->exp('email', 'UPPER(email)')->update($data);</p>
</li>
<li>
<p>使用 raw()方法修改更新,更加容易方便;
$data = [
'username' => '李白',
'email' => Db::raw('UPPER(email)'),
'price' => Db::raw('price - 3'),
'id' => 38
];
Db::name('user')->update($data);</p>
</li>
<li>
<p>使用 setField()方法可以更新一个字段值;
Db::name('user')->where('id', 38)->setField('username', '辉夜');</p>
</li>
<li>增值 setInc()和减值 setDec()也有简单的做法,方便更新一个字段值;
Db::name('user')->where('id', 38)->setInc('price');</li>
</ol>
<p>三.删除数据 </p>
<ol>
<li>极简删除可以根据主键直接删除,删除成功返回影响行数,否则 0;
Db::name('user')->delete(51); </li>
<li>根据主键,还可以删除多条记录;
Db::name('user')->delete([48,49,50]); </li>
<li>正常情况下,通过 where()方法来删除;
Db::name('user')->where('id', 47)->delete(); </li>
<li>通过 true 参数删除数据表所有数据,我还没测试,大家自行测试下;
Db::name('user')->delete(true);</li>
</ol>