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()


1

        DB::update(‘borle_do‘,array(‘countMoney‘ => $countMoney),array(‘doId‘=> $doId),true);}

参数解释:

$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

<?php 
       $dId = 5;//可以使用$dId = ‘2admin‘,输出2,由于Intval()将指转换为2
       $data = DB::fetch_first(‘select * from %t where dId=%d‘,
               array(‘test_db‘,$dId)
       );
       print_r($data);
?>

参数解释:

$sql:查询数据的sql语句

$arg:绑定查询的参数

$silent:查询失败时是否不提示

数据表查询操作(多条)

方法名:DB::fetch_all()


1
2
3
4
5
6
7
8

<?php 
    $data = DB::fetch_all("select * from %t where dId>=%d and dId<=%d",
            array(‘test_db‘,1,9),
            ‘dId‘
    );
    
    print_r($data);
?>

通过%n进行数据查询


1
2
3
4
5
6
7

<?php 
    //%n表示array(1,2,3,4,5,6)
    $data = DB::fetch_all("select * from %t where dId in (%n)",
             array(‘test_db‘,array(1,2,3,4,5,6))
    );
    print_r($data);
?>

参数解释:

$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:查询失败时是否不提示

时间: 2024-10-13 23:00:24

Discuz!X3.1数据库的操作(一)的相关文章

Discuz!X3.1数据库的操作(二)

数据库自定义query 方法名:BD::query() 参数解释: $sql:自定义SQL语句 $arg:需要绑定的数据 $unbuffered:是否使用无缓存查询 12345678910111213141516 <?phpDB::query("SELECT * FROM %t WHERE id IN (%n)",array(     'test_db', array(1,2,3))); //资源集转换结果集  whlie($res = DB::fetch($query)){ 

Discuz!X3.1数据库的操作(三)

MVC开发思想简介 MVC全名是Model-View-Controller,是模型(model)-视图(view)-控制器(controller)的缩写,它是一种软件设计思想.使用一种业务逻辑,数据和显示分离的方法组织代码,实现代码复用的最大化. MVC的执行流程 mvc执行流程 模型目录介绍 内置模型目录 产品根目录/source/class/table/table_xxx.php 插件模型目录 产品根目录/source/plugin/插件目录/table/table_xxx.php 模型调用

discuz x3论坛搬家换虚拟主机完美使用教程 亲测可行 附操作步骤

第一步:备份网站数据进入后台—站长—数据库—备份,数据备份类型选择“Discuz!和 UCenter数据”,备份成功以后,数据自动保存在data文件夹下. 第二步:网站文件下载 把整个网站文件打包(虚拟主机管理控制面板一般都有整站压缩和解压的功能,在控制面板选择压缩,压缩之后的文件一般在FTP DB文件夹里面,然后把压缩包下载到本地电脑,如果虚拟主机没有在线压缩功能那就直接使用FTP下载文件到本地保存. 第三步:整理下载到本地的网站文件1.把下载下来的文件里面的下列文件删除,请完全放心删除掉这几

Discuz!X3.1后台操作技巧(整合)

Discuz!X3.1默认模板 文件 默认模板 default Common   文件夹里面是存放的公共模板文件: Forum     文件家里面存放的是论坛模板文件: Group     文件夹是存放的群组功能的模板文件: Home     文件夹是存放的家园功能的模板文件: Member   文件夹是存放会员中心的模板文件夹: Mobile    文件夹是手机版模板文件夹: Portal     文件夹是门户模板文件夹: Search    文件夹是搜索的模板文件夹: Style      

去掉删除discuz x3.2 的-Powered by Discuz!

如图discuz论坛 网站标题栏的尾巴powered by discuz!是不是很想删除呢,特别是为什么会剩下短线呢?下面就叫你如何准确删除或者修改. 工具/原料 8UFTP(使用自己熟悉的网站文件上传软件) Dreamwar(网站代码编辑软件) 方法/步骤 首先进入discuz x3.2 的管理后台--全局--seo设置--论坛,做如图修改.这样并不能去除powered by discuz!.只能改显示. 进入ftp网站根目录,找到文件htdocs\template\default\commo

phpcms v9和discuz X3.1实现同步登陆退出论坛(已实现)

网络上文章很多,按步骤配置好了之后phpcms可以同步登录dz,但是dz登录后状态却无法同步到phpcms,网络上找了很多资料都大同小异,头大.只能自己调试了,废话不多说了. 以下网络上抄的安装步骤,留着自己用,有安装过的可跳过. 第一步:安装 phpcms V9 .安装 Discuz! X3.1 (同时安装 UCenter). 第二步:在 UCenter 中添加“phpsso 应用”. 1.管理员登录 Discuz! X3.1 管理中心,进入“UCenter”,点击“应用管理”.     2.

phpcms 2008和discuz X3.1实现同步登陆退出论坛(已实现)

网络上文章很多,按步骤配置好了之后phpcms可以同步登录dz,但是dz登录后状态却无法同步到phpcms,网络上找了很多资料都大同小异,头大.只能自己调试了,废话不多说了. 以下网络上抄的安装步骤,留着自己用,有安装过的可跳过. 第一步:安装 phpcms V9 .安装 Discuz! X3.1 (同时安装 UCenter). 第二步:在 UCenter 中添加"phpsso 应用". 1.管理员登录 Discuz! X3.1 管理中心,进入"UCenter",点

Discuz! X3.1论坛前台使用教程

帖子地址:http://www.g8f8.com/thread-21100-1-1.html 论坛首页 论坛首页是用户访问论坛时,进入到的第一个页面.它汇集了论坛分区.版块.子版块等核心元素,展示了论坛帖子和会员汇总信息.论坛公告.论坛热点.在线会员.友情链接等丰富信息,同时包含了首页右边栏和DIY等灵活的扩展区域. 下面来为大家详细介绍一下以上的元素,请看下图:<ignore_js_op> 以下是各项的详细内容: 论坛版块 论坛分区目的是将内容相近的版块归类,使论坛的结构清晰.管理员可以在后

Discuz!X3.2学习笔记

最近要做一个论坛,找了一个比较成熟的模板Discuz!X3.2. 几天下来见识了这个论坛功能的庞大,也学习了功能强大的后台管理.但是终究还是需要对discuz进行二次开发满足功能需求. 针对discuz!X3.2初级的学习,发现还是那样,开始不爱听,后续听不懂.那怎么办呢?写篇笔记来督促自己的学习深度和进度. 安装注意: 1数据库前缀名要写一个复杂一点的名称,建立用户,并创建用户数据库. 2discuz!X安装完成后要尽量删除安装文件,安装根目录下的install目录. 3后台管理入口文件名要修