ThinkPhp5控制器中的查询操作

ThinkPhp5控制器中的查询操作

小小知识点:

1、原生sql查询语句 query

//query 返回一个二维数组//如果插入不成功则直接报错
//query 如果结果不存在返回一个空数组
$db = Db::query("select * from user where id=?",['1']);

2、原生sql插入语句 execute

//返回影响行数 init 1
//如果插入不成功则直接报错
$db = Db::execute("insert into user user set username=?,password=?"
,['我是username的问号','我是password的问号']);

3、Db类 select 方法

//select 返回的结果是一个二维数组
//select 如果结果不存在返回空数组
Db::table('表名')->where(['id'=>'1'])->select();

4、Db类 find方法

//find方法 返回一条数据 是一个一维数组 
//如果直接使用不带where条件则自动默认按照id正序排列的第一条最小的在前面 
//结果不存在返回 null 
Db::table('表名')->where(['id'=>'1'])->find();

5、Db类 value方法

//value方法返回一条记录
//返回一个和你数据库字段类型一样类型
//的数据就是该字段的值
//如果没有where条件则自动默认按照id正序排列的第一条最小的在前面
//如果没有该字段就报错
Db::table('表名')->where(['id'=>'1'])->value('字段名');

6、Db类 column方法

//不加where条件查询所有
//返回一个一维数组  数组中value值就是username字段的数据
//array(4) {
  //[0] => string(4) "test"
  //[1] => string(5) "test2"
  //[2] => string(5) "test3"
  //[3] => string(6) "测试"
//}
//如果查询不出来则返回空数组
//如果没有该字段则报错
Db::table('表名')->column('username');


//column里面写两个参数的话 column('id','username');
Db::table('表名')->column('id','username');
//返回的一维数组
//第一个参数id作为数组的键 username作为该键的值
//结果不存在返回空数组
扩充知识:
Db::name(表名不写表前缀)->select();
也可以这么写
db('表名不写表前缀')->select();
如果不想每次都重新链接数据库
db('表名不写表前缀', [] , false)->select();

提供最优质的资源集合

立即查看 了解详情