当前位置 : 主页 > 建站教程 > dedecms >

织梦数据库类常用操作函数getone()、Execute()剖析

来源:互联网 收集:自由互联 发布时间:2021-06-20
织梦dedecms系统会自动载入 dedesql.class.php 文件,并用 $dsql = $db = new DedeSql(false); 进行初始化数据库连接,因此在工程所有文件中均不需要单独初始化这个类,可直接用 $dsql 或 $db 进行操作
织梦dedecms系统会自动载入 dedesql.class.php 文件,并用 $dsql = $db = new DedeSql(false); 进行初始化数据库连接,因此在工程所有文件中均不需要单独初始化这个类,可直接用 $dsql 或 $db 进行操作,为了防止错误,操作完后不必关闭数据库。   常用的方法: 1、执行一个非查询类型的SQL语句,如 insert 、create 、update 等 $rs = $db->ExecuteNoneQuery($sql); 返回值为是否执行成功。   2、执行一个非查询类型的SQL语句,并返回成功记录数 $rs = $db->ExecuteNoneQuery2($sql);   与上面相比,它返回的是影响的记录数,而不是布尔值   3、返回单个记录 $arr = $db->GetOne($sql);   $dsql 如果不带 limit ,系统会自动加上 limit 0,1   4、执行条件查询语句 $db->SetQuery($dsql); $db->Execute(); while($arr = $db->GetArray()) { } 可以简化为: $db->Execute('me',$dsql); while($arr = $db->GetArray()) { }   'me' 为记录集游标,用于区分不同的查询,如:   $db->Execute('me',$dsql); while($arr = $db->GetArray()) {    $db->Execute('2',$dsql2);    while($arr2 = $db->GetArray())    {           } } 像这种情况必须指定一个值区分默认的'me'参数,否则会出错   $db->GetArray($rsid,$acctype) 参数 $rsid="me" $acctype=MYSQL_ASSOC   在查询游标中读取数据还可以用 $db->GetObject($rsid="me");   返回的结果是用类结构表示的值。   5、获取上一个插入的自动递增主键id值 $db->GetLastID();   6、获得查询的总记录数 $db->GetTotalRow($rsid="me")   7、获得MySql的版本号 $db->GetVersion($isformat=true) 默认的情况下会转换成 x.xx 形式浮点数   8、析放某查询的资源   $db->FreeResult($rsid="me");   9、在数据库中是否存在某数据表 $db->IsTable($tbname)   10、重新选择要操作的数据库 $db->SelectDB($dbname);   11、获得数据库连接标识 $db->linkID 获得这个连接标识后,可以直接用mysql相关函数进行数据库操作 在非不得已的情况,项目中一般不使用这个变量。
网友评论
相关栏目