Discuz!X3.1数据库的操作
Posted alleyonline的博客
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Discuz!X3.1数据库的操作相关的知识,希望对你有一定的参考价值。
数据库指的是以一定方式储存在一起、能为多个用户共享、具有尽可能小的余度、与应用程序彼此独立的数据集合。产品中的主题,帖子,用户,关注等等。所有数据都存储在数据库中。
官方数据字典
http://faq.comsenz.com/library/database/x3/x3_index.htm
数据库规范
http://dev.discuz.org/wiki/index.php?title=编码规范
数据表插入操作
方法名:DB::insert()
1
2 3 4 5 |
<?php
DB::insert(‘test_db‘,array( ‘dname‘ => ‘ppc‘, ),true); ?> |
参数解释:
$table:插入数据的表
$data:插入的数据,字段对应值
$return_insert_id:是否返回插入数据的ID
$replace:是否使用replace into
1
2 3 4 5 6 7 |
<?php
//$replace 当存在数据执行修改,不存在执行写入 DB::insert(‘test_db‘,array( ‘did‘ => ‘1‘, ‘dname‘ => ‘ppc‘, ),true,true); ?> |
$slient:操作失败是否不提示
数据表删除操作
方法名:DB::delete()
1
2 3 |
<?php
DB::delete(‘test_db‘,‘dId=4‘,1,true) ?> |
参数解释:
$table:删除数据的表
$condition:删除条件
$limit:删除满足条件的目数
$unbuffered:是否使用无缓存查询
数据表更新操作
方法名:DB::update()
1
2 3 4 5 |
<?php
DB::update(‘test_db‘,array( ‘dName‘ => ‘ppc2‘ ),‘dId=5‘,true); ?> |
插入的值如果是变量用array()
参数解释:
$table:(更新数据的表)
$data:更新的数据,字段对应的
$condition:更新的条件
$unbuffrerd:是否使用无缓存查询
$low_priority:是否采用无损更新表
绑定查询的参数解释
表达式 | 数据处理 |
%t | DB::table() |
%d | Intval() |
%s | addslashes |
%n | IN(1,2,3) |
%f | Sprintf(‘%f,%var’) |
%i | 不做任何处理 |
数据表查询操作(单条)
方法名:DB::fetch_first()
1
2 3 4 5 6 7 |
参数解释:
$sql:查询数据的sql语句
$arg:绑定查询的参数
$silent:查询失败时是否不提示
数据表查询操作(多条)
方法名:DB::fetch_all()
1
2 3 4 5 6 7 8 |
通过%n进行数据查询
1
2 3 4 5 6 7 |
参数解释:
$sql:查询数据的SQL语句
$arg:绑定查询的参数
$keyfield:一维索引的字段名称
$silent:查询失败的是否不提示
数据表查询操作(单字段)
方法名:DB::result_first()
1
2 3 4 5 6 7 |
<?php
//查询dName字段id=1的数据 $data = DB::result_first("select dName from %t where dId=%d", array(‘test_db‘,1) ); echo $data; ?> |
比较常用语统计查询
1
2 3 4 5 6 |
<?php
$data = DB::result_first("select count(*) from %t", array(‘test_db‘) ); echo $data; ?> |
取最大值id
1
2 3 4 5 6 |
<?php
$data = DB::result_first("select max(dId) from %t", array(‘test_db‘) ); echo $data; ?> |
参数解释:
$sql:查询数据的sql语句
$arg:绑定查询的参数
$silent:查询失败时是否不提示
以上是关于Discuz!X3.1数据库的操作的主要内容,如果未能解决你的问题,请参考以下文章