收藏 分享(赏)

BFW操作手册.doc

上传人:eukav 文档编号:6387729 上传时间:2019-04-10 格式:DOC 页数:7 大小:53KB
下载 相关 举报
BFW操作手册.doc_第1页
第1页 / 共7页
BFW操作手册.doc_第2页
第2页 / 共7页
BFW操作手册.doc_第3页
第3页 / 共7页
BFW操作手册.doc_第4页
第4页 / 共7页
BFW操作手册.doc_第5页
第5页 / 共7页
点击查看更多>>
资源描述

1、模型的使用方法/每个需要new对象的文件都要copy该语句require_once (E0020PATHROOT.“BFW_jxc/backstage/basecore.php“);/讲述Model 如何使用/* 需要跨库操作数据*/配置连接方式(可以写出不同的数据库连接 arr)$arrDB=Array(DbType = mysqli,UserName = root,PassWord = asdfghjk,HostName = 10.190.100.2,HostPort = 3306,DbName = DIYErp_1000018);/得到mysqli方式连接$conn_arr=new li

2、b_database_pdbc_DbMysqliClass($arrDB);/-/DSN方式连接(可以写出不同的数据库连接dsn)$db_dsn = “mysql:/root:asdfghjk10.190.100.2:3306/DIYErp_1000018“; $conn_dsn=new lib_database_pdbc_DbMysqliClass($db_dsn);/创建起先建立好的model$testTable=new jxc_model_MMBasePropertyField($conn);/需要选取的字段 limit(开始点, 个数) 必须使用字符否则会容错取第一个$result=$

3、testTable-field(“strField,strDisplay,isUsed,strFieldLength“)-limit(10)-select();/多条/print_r($result);$arr=array(strField,strDisplay,isUsed,strFieldLength);$result=$testTable-field($arr)-find();/单条 第一条/print_r($result);/* 目前可以通过配置文件自动创建默认连接(推荐使用方式)*/直接new 直接使用语句$db=new lib_database_pdbc_DbMysqliClass

4、();$strIns=“INSERT INTO ttt (name,email) VALUES(32,中文代码)“;$db-execute($strIns);$strUpd=“UPDATE ttt SET email=aaaaa WHERE name=32“;$db-execute($strUpd);$strSql=“SELECT * FROM ttt“;$result=$db-query($strSql);/print_r($result);/-查询数据-select()-find()-/创建需要的model (见jxc_model_MMBasePropertyField/jxc_model

5、_InfoStorageGroupModelClass类)$modelMM=new jxc_model_InfoStorageGroupModelClass();/获取查询的字段名,如果没有设置 fields默认查出所有字段(单表)$fields=$modelMM-getDbFields();/print_r($fields);$result=$modelMM-order(intStorageGroupPK DESC)-limit(5)-select();/print_r($result);$result=$modelMM-find(111);/通过主键获取,必须在model 中指明主键/pr

6、int_r($result);/echo $resultstrStorageGroupNo;/创建一个查询使用的arr$tempintModulePK=array(!=,E0020);/不等于$obj=$modelMM-where($temp)-select();print_r($obj);/区间查询$temp2intStorageGroupPK=array(array(=,134),array(where($temp2)-select();/print_r($obj);/-插入数据 -add()-/创建一个数组$dataintStorePK=“1000018“;$dataintModuleP

7、K=“E0020“;$datastrStorageGroupNo=“测试数据“;$datastrStorageGroupName=“测试数据名“ ;/$returnValue=$modelMM-data($data)-add();/返回插入行的主键号主键+1/echo $returnValue;/得到上一次的sql$sql=$modelMM-getLastSql();/echo $sql;/-删除数据-delete()-/$modelMM-where(intStorageGroupPK = 125)-delete();/-更新数据-save()-/使用锁/查询锁定使用: /$list = $m

8、odelMM-lock(true)-where(“intModulePK=E0020“)-order(intStorageGroupPK)-limit(10)-select();/$uparrstrStorageGroupNo=“程序更新之 “;/更新锁定使用: $list = $modelMM-lock(true)-where(“intModulePK=E0020“)-data($uparr)-save();/-高级应用-startTrans()commit()rollback()-/事物处理/$modelTrans=new lib_model_ModelClass();/$modelTra

9、ns-startTrans();/ 进行相关的业务逻辑操作 /$modelMM=new jxc_model_InfoStorageGroupModelClass();/$modelMM-where(“intModulePK=E0020_1“)-delete();/$modelMM-data($data)-add();/if ( 操作成功) / 提交事务 / $modelTrans-commit(); /else / 事务回滚 / $modelTrans-rollback(); / /-其他方法 -/如果只是更新某个字段的值,可以使用 setField 方法: /$modelMM-where(“

10、intModulePK=E0020“)-setField(strStorageGroupNo,setfiel修改之);/只得到一个数据/$result=$modelMM-where(“intModulePK=E0020“)-getField(strStorageGroupNo);/echo $modelMM-getLastSql();/echo $result;固化模型类的创单表:class jxc_model_InfoStorageGroupModelClass extends lib_model_ModelClass/初始化表名前缀/ private $tablePrefix = tblS

11、tock;/ 数据表后缀由子类实现/ private $tableSuffix = ;/ 数据库表名前间隔符 / private $spaceMarkP = _;/ 数据库表名后间隔符 / private $spaceMarkS = ;/需要显示的字段名 +PKprotected $fields=array(“_pk“=“intStorageGroupPK“,/指明find的依据“intStorePK“,“intModulePK“,“strStorageGroupNo“,“strStorageGroupName“,“intFatherStorageGroupPK“,“intStorageLev

12、el“,“intTreeLevel“,“intInLevelOrder“,“isHaveSubGroup“,“strRelation“,“strOrderRelation“,“strMemo“,“dtDate“);/* 获得所有仓库信息*/public function getStorageGroup()/创建查询条件数组$arr=array(“where“=“intModulePK=E0020“);$var=$this-field()-select($arr);/ var_dump($var);/ echo “;return $var;多表:/* 由tblStock_BaseField和tb

13、lStock_PropertyField组成* author zjh* version 创建时间:2011-5-3 上午09:26:13*/class jxc_model_MMBasePropertyField extends lib_model_MultiTableModelClassprivate $logger;protected $containFields=array(/表名BaseField=array(intBaseTablePK),PropertyField=array(strField,strDisplay,isUsed,strFieldLength,HTMLElement=

14、htmlType,/别名/默认是left连接_on=(PropertyField.isDescribe=0 and PropertyField.intBaseTablePK=BaseField.intBaseTablePK and PropertyField.strField=BaseField.strField) or (PropertyField.isDescribe=1 and PropertyField.intDescribeTablePK=BaseField.intBaseTablePK and PropertyField.strField=BaseField.strField) )

15、;/对外部的借口 得到需要的数据public function getModelData($intBaseTablePK,$intStorePK,$intModulePK)/得到符合条件的数据$arr=$this-where(“BaseField.intBaseTablePK=“.$intBaseTablePK. “ AND PropertyField.intStorePK=“.$intStorePK. “ AND PropertyField.intModulePK=“.$intModulePK.“.“ AND PropertyField.isUsed=1“)-select();return

16、json_encode($arr);public function getFieldByBaseTablePK($intBaseTablePK)/通过where 进参是字符串$arr2=$this-where(“BaseField.intBaseTablePK=“.$intBaseTablePK.“ and PropertyField.isAdmDisplay =1 and PropertyField.intModulePK=E0020 and PropertyField.isUsed=1 “)-select();/ print_r($arr2);/直接执行语句$sql=“select * from tblStock_PropertyField where intModulePK=E0020 and intBaseTablePK=“.$intBaseTablePK.“and isUsed=1“;$res=$this-query($sql);return $res;

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 实用文档 > 产品手册

本站链接:文库   一言   我酷   合作


客服QQ:2549714901微博号:道客多多官方知乎号:道客多多

经营许可证编号: 粤ICP备2021046453号世界地图

道客多多©版权所有2020-2025营业执照举报