- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
5.完整的数据库访问解析
大连东软信息学院 计算机科学与技术专业教育管理团队 数据库访问第一步:连接数据库 在config.php文件中进行配置 DB_TYPE = mysql, // 数据库类型 DB_HOST = , // 服务器地址 DB_NAME = thinkphp, // 数据库名 DB_USER = root, // 用户名 DB_PWD = 123456, // 密码 DB_PORT = 3306, // 端口 DB_PREFIX = think_, // 数据库表前缀 DB_CHARSET= utf8, // 字符集 DB_DEBUG = TRUE, // 数据库调试模式 开启后可以记录SQL日志 数据库访问第二步:实例化模型类 1.如果你仅仅是对数据表进行基本的CURD操作的话,使用M方法实例化的话性能高些。 语法: 变量名=M(表名); 例如: $user=M(users); //该语句实例化ThinkPHP自带的Model类 2. 如果有具体的模型类,则需要使用D方法实例化。 语法: 变量名=D(表名); 例如: $user=D(users); //该语句实例化的是Model文件夹下的UsersModel类 数据库访问第三步:执行数据操作-连贯操作 连贯操作(链式操作)的代码编写方式 $user-where(status=1)-order(create_time)-limit(10)-select(); 顺序无关: $user-order(create_time)-limit(10)-where(status=1)-select(); 不使用连贯操作,可以用数组: $user-select(array(order=create_time,where=status=1,limit=10)); 数据库访问第三步:执行数据操作-CURD CURD增删改查操作: 1.数据创建: a).超链或表单提交的参数,一般的获取方式: // 实例化User模型 $user = M(users); // 获取表单的POST数据 $data[name] = $_POST[name]; $data[email] = $_POST[email]; // 更多的表单数据值获取 …… $user-create($data); 数据库访问第三步:执行数据操作-CURD b).ThinkPHP可以帮助你快速地创建数据对象,最典型的应用就是自动根据表单数据创建数据对象,这个优势在一个数据表的字段非常之多的情况下尤其明显。 // 实例化User模型 $user = M(users); // 根据表单提交的POST数据创建数据对象:表单参数必须和users表的字段同名 $user-create(); create方法创建的数据对象是保存在内存中,并没有实际写入到数据库中,直到使用add或者save方法才会真正写入数据库。 数据库访问第三步:执行数据操作-CURD 2.往数据库新增数据:add方法 $user = M(users); // 实例化User对象 $data[name] = ThinkPHP; $data[email] = ThinkPHP@; $user-add($data); 数组中的name和email都是操作的users表的字段名。 数据库访问第三步:执行数据操作-CURD 如果在add之前已经创建数据对象的话(例如使用了前面介绍的create方法),add方法就不需要再传入数据了。 使用create方法的例子: $user = M(users); // 实例化user对象 // 根据表单提交的POST数据创建数据对象 if($user-create()){ $result = $user-add(); // 写入数据到数据库 if($result){ // 如果主键是自动增长型 成功后返回值就是最新插入的值 $insertId = $result; }} 如果写入了数据表中不存在的字段数据,则会被直接过滤 数据库访问第三步:执行数据操作-CURD 3.数据删除:使用delete方法 $user= M(users); $user-delete(5); //删除users表中主键为5的记录 $user-where(id=5)-delete(); // 删除id为5的用户数据 $user-delete(1,2,5); // 删除主键为1,2和5的用户数据 $user-where(status=0)-delete(); // 删除所有状态为0的用户数据 提问:删除name为张三的用户? 删除age为10,
文档评论(0)