- 1、本文档共13页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
《tp数据库操作
?【数据库操作】?【连接数据库配置】2014年8月23日9:42?convertion.phpconfig.php在config.php做数据库连接配置制作model模型model本身就是一个类文件数据库中的每个数据表都对应一个model模型文件最简单的数据model模型类字段缓存设置tp框架执行过程中会使用到数据表中的字段信息,通过sql语句可以查询”show colums from table” ,处于性能考虑,可以把字段缓存,避免每次重复执行sql语句。可以根据情况对当前的model模型进行个性化设置对于一些特殊命名的表(不都是相同的前缀的),以下两种方法都可以在入口文件定义一个调试输出函数,便于系统开发使用??【实例化Model的三种方式】2014年8月24日10:14?$goods = new 命名空间GoodsModel(); (Model\GoodModel)?$goods = D(‘模型标志’);$goods = D(“Goods”);该$goods是父类Model(Think\Model)的对象,但是操作的数据表还是sw_goods$obj = D(); 实例化Model对象,没有具体操作数据表,与M()方法效果一致$obj = M(); 实例化父类Model可以直接调用父类Model里边的属性,获得数据库相关操作自定义model就是一个空壳,没有必要实例化自定义model$obj = M(‘数据表标志’); 实例化Model对象,实际操作具体的数据表$obj = D(标志);$obj = D();$obj = M(标志);$obj = M();D()和M()方法的区别:前者是tp3.1.3里边对new操作的简化方法;后者在使用就是实例化Model父类两者都在函数库文件定义ThinkPHP/Common/functions.php?注意:如果没有对应的model模型文件类,也可以直接实例化model对象进行操作D()和M()方法都可以实例化操作一个没有具体model模型类文件的数据表。?【使用原生SQL】2014年8月25日17:57?TP的模型可以支持原生SQL操作,提供了query和execute两个方法,为什么原生SQL还要区分两个方法呢,原因有两个:1、返回类型不同query用于查询,返回的是数据集,和select或者findall一样,所以可以直接在模板里面使用volist标签输出query的查询结果execute用于写操作,返回的是状态或者影响的记录数2、读写统计需要为了便于统计当前的数据读写次数,把数据库的读和写操作分开(对应的就是query和execute)使用原生SQL很简单,我们甚至不需要实例化任何的模型,例如:$Model = new?Model(); //?实例化一个空模型下面的方法是等效的$Model =?D();?或者?$Model =?M();//?下面执行原生SQL操作$Model-query(select * from think_user where status=1);$Model-execute(update think_user set status=1 where id=1);如果你实例化了某个模型,仍然可以执行原生SQL操作,不受影响,例如:$User =?D(User);$User-query(select * from think_user where status=1);$User-execute(update think_user set status=1 where id=1);在这种情况下面,我们可以简化SQL语句的写法,例如:$User-query(select * from __TABLE__ where status=1);$User-execute(update __TABLE__ set status=1 where id=1);系统会自动把__TABLE__替换成当前模型对应的数据表名称,实际的数据表由模型决定。通常来说,我们都是使用原生SQL操作实现一些ORM和CURD比较难实现的操作,另外,如果SQL不复杂的话?原生SQL的效率和连贯操作的效率差别是微乎其微的,TP本身的ORM实现也是相当高效的。??【数据查询】2014年8月24日10:14?select()是数据模型的一个指定方法,可以获得数据表的数据信息返回一个二维数组信息,当前数据表的全部数据信息配置smarty配置变量信息 convertion.phpBehavior行为配置变量信息(页面底部日志显示配置、smarty配置)系统程序里边有一些零散的配置信息 在config.php里边配置smarty使用设置模板引擎配置参数位置(不能直接修改,在config.php里边
您可能关注的文档
- 《sybase数据库性能调整.doc
- 《Sybase数据库空间扩容.doc
- 《syb创业计划书范文.doc
- 《Symbian塞班操作系统.doc
- 《Symbian手机操作系统整理.docx
- 《SYMETRIX数字信号处理器.doc
- 《system函数一些常用的命令.doc
- 《synonym.doc
- 《S及其化合物的相关性质.doc
- 《s命令选项详解.docx
- 2025年花园工贸集团有限公司校园招聘85人公开引进高层次人才和急需紧缺人才笔试参考题库答案详解版汇.docx
- 2025年花园工贸集团有限公司校园招聘85人公开引进高层次人才和急需紧缺人才笔试参考题库答案详解版1.docx
- 2025年花园工贸集团有限公司校园招聘85人公开引进高层次人才和急需紧缺人才笔试参考题库答案详解版学.docx
- 2025年艾默生网络能源有限公司校园招聘模拟试题附带答案详解完美版.docx
- 2025年艾默生网络能源有限公司校园招聘模拟试题附带答案详解一套.docx
- 2025年艾默生网络能源有限公司校园招聘模拟试题附带答案详解及参考答案1套.docx
- 2025年艾默生网络能源有限公司校园招聘85人公开引进高层次人才和急需紧缺人才笔试参考题库答案详解版.docx
- 2025年艾美特电器(深圳)有限公司校园招聘模拟试题附带答案详解汇编.docx
- 2025年艾默生网络能源有限公司校园招聘85人公开引进高层次人才和急需紧缺人才笔试参考题库答案详解版.docx
- 2025年艾默生网络能源有限公司校园招聘85人公开引进高层次人才和急需紧缺人才笔试参考题库答案详解版.docx
最近下载
- 船外机_本田维修手册BF175BF200BF225中文版.pdf VIP
- 船外机_雅马哈维修手册_英文F225F_Fl225F_F250D_Fl250D_F300B_Fl300B_p1-a-p150-anglais-Service Manual-.pdf VIP
- 船外机_雅马哈维修手册_英文F6AMH_6BMH_6Y_8CMH_8CW_8Y Service Manual [en].pdf VIP
- 船外机_雅马哈维修手册_英文F4B-F5A-F6C-(6BV-28197-3M-11)Service Manual-2014.pdf VIP
- 船外机_雅马哈维修手册_英文F9.9-T9.9(LIT-18616-03-03 6AU-28197-1K-11)2007Service Manual.pdf VIP
- 船外机_雅马哈F20C(6AJ-28197-5K-11)英文维修手册.pdf VIP
- 小儿急性咽炎护理查房.pptx
- 乐山市公安局警务辅助人员招聘考试真题2024.docx VIP
- 船外机_雅马哈维修手册_英文F15C-F20B-F20bmh-2006.pdf VIP
- 船外机_雅马哈F9.9JMH(6DR-28197-3S-11)英文维修手册.pdf VIP
文档评论(0)