微擎的数据库操作主要是采用PDO的方式,如果您在初学PHP的时候已经接触或了解过PDO,本篇笔记将会理解起来非常容易。如果你没了解过也没关系,最重要的是Mysql的基础语法一定要熟悉。
如果你没有Mysql基础,可以参考这篇笔记《10分钟学会MySQL》
一、常用数据库表:
微擎官方开发文档有关于数据库的说明,而我们开发使用最多的是ims_mc_mapping_fans 粉丝表、
ims_mc_members 会员表这两个表。
二、常用数据库操作整理:
- 表名
- tablename('mc_members')
- 查询一条数据
- pdo_get('yoby_demo',['id'=>1]);
- pdo_get('yoby_demo',['id'=>1],['title','num']);返回特定字段
- pdo_get('yoby_demo',[],['count(*) as z','title','num','max(num)']);
- pdo_fetch("SELECT username, uid FROM ".tablename('users')." WHERE uid = :uid LIMIT 1", array(':uid' => 1));
- 查询单字段
- pdo_getcolumn('yoby_demo',['id'=>1],'title');
- pdo_fetchcolumn("SELECT COUNT(*) FROM ".tablename('users'));
- 查询多条记录
- 表名,条件,返回字段,主键,排序,限制条数
- pdo_getall('yoby_demo',[],[],'','id desc','.($pindex-1)* $psize.','.$psize);
- pdo_fetchall("SELECT username, uid FROM ".tablename('users'), []);
- 插入数据,第二个参数数组
- pdo_insert('yoby_demo',[]);
- $id = pdo_insertid();插入id
- 修改
- pdo_update('yoby_demo',['num +='=>1],['id'=>1]);
- 删除
- pdo_delete('yoby_demo',['id'=>1]);
- pdo_delete($this->table_reply, "id IN ('".implode("','", $deleteid)."')");
- 执行sql
- pdo_query("DELETE FROM ".tablename('users')." WHERE uid = :uid", array(':uid' => 2));
- 支持多条sql用分号隔开
- pdo_run($sql);
- 显示调试语句
- pdo_debug();
- 检测某个字段是否存在
- pdo_fieldexists('shopping_goods', 'credit');
- 检测某个表是否存在
- pdo_tableexists($tablename)
- 检测表是否为空
- pdo_exists($tb)
- 获取数据条数
- pdo_count($tb,['id'=>1])
东西虽少,都是精华。
其实关于数据库操作如果熟练的话,完全也可以抛开微擎本身的PDO操作,而借鉴Laver和TP。无非是当作类库引入即可。万变不离其宗的是,你要会Mysql基础语法。