Discuz!X/数据库函数操作方法
DB::table($tablename)获取正确带前缀的表名,转换数据库句柄
DB::delete($tablename, 条件,条数限制)删除表中的数据
DB::delete('test_db', 'id>1',1)
DB::insert($tablename, 数据(数组),是否返回插入ID,是否是替换式,是否silent报错)插入数据操作
DB::insert(''test_db, array('a'=>1,'b'=>2),false,true,true)
DB::update($tablename, 数据(数组),条件,$unbuffered, 是否不锁表)更新操作
DB::insert(''test_db, array('name'=>'admin','passwd'=>'123'),'id=1')
DB::fetch_first($sql, $arg)取查询的第一条数据fetch DB::fetch_all($sql)查询并fetch
<?php
$id = 1;
$data = DB::fetch_first(
"select * from %t where id=%d",
array('test_db', $id)
);
debug($data);
DB::fetch_all($sql, $arg绑定查询参数, $keyfield可指定数组索引, $silent ) 多条查询
<?php
$data = DB::fetch_all("select * from %t where id >= %d and id <= %d",
array('test_db', 3, 5)
);
debug($data);
DB::result_first($sql)查询结果集的第一个字段值
<?php
DB::result_first("select count(*) from %t",
array('test_db')
);
DB::query($sql, $arg, $silent, $unbuffered)普通查询
DB::fetch($resourceid, $type)从结果集中取关联数组,注意如果结果中的两个或以上的列具有相同字段名,最后一列将优先。
<?php
$res = DB::query("select * from %t where id IN (%n)", array(
'test_db', array(1,2,3)
));
$rows = array();
while($row = DB::fetch($res)){
$rows[] = $row;
}
debug($rows);
DB::num_rows($resource)获得记录集总条数
DB::_execute(命令,参数)执行mysql类的命令
DB::limit(n,n)返回限制字串
DB::field($filed, $val, $glue) 返回条件,如果为数组则返回 in 条件
<?php
echo DB::field('id', 99, '=');
//输出 'id'=99
DB::order(别名, 方法)排序