tp笔记


8.增删改操作

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

页面列表

ITEM_HTML