一、简介
前面讲解的功能开发都是简单的调用API 完成的,没有对数据库进行操作。在接下来的高级功能开发中,需要使用到数据库,所以在这一篇中,将对MySQL 数据库的操作做一下简单的介绍,以供读者参考。
二、思路分析
百度开发者中心提供了强大的云数据库(包括MySQL, MongoDB, Redis),在这一节教程中,我们将对大家比较熟悉的MySQL 数据库进行操作演示,实现微信与数据库的交互。
在BAE应用中使用云数据库十分简单,数据库列表中的名称即是连接数据库时的dbname。用户名、密码、连接地址和端口在应用中通过环境变量取出。
可使用标准的PHP Mysql 或PHP Mysqli 扩展访问数据库,BAE的PHP中已提供这两个扩展,应用可直接使用。
三、创建BAE MySQL数据库
3.1 登陆百度开发者中心 -> 管理中心 -> 选择应用 -> 云环境 -> 服务管理 -> MySQL(云数据库) -> 创建数据库
3.2 创建数据库
注意:每个应用有且只有一个数据库享受1G免费配额,其余数据库均不享受免费配额优惠。只有将已使用免费配额的数据库删除,才能再次使用此项优惠。
3.3 创建成功
在这里可以看到数据库的名称,也就是dbname,后面会使用到。
点击 “phpMyadmin” 访问数据库。
3.4 phpMyadmin界面
新建数据表,输入表名及字段数,点击 “执行” 创建表。
3.5 创建表
输入字段名及字段类型,输入完毕后,点击下面的“保存”,完成表的创建。
3.6 创建完成
修改id 字段为主键并添加AUTO_INCREMENT;修改from_user 字段为唯一(UNIQUE),完成表的修改。
建表操作也可以使用以下SQL语句完成:
CREATE TABLE IF NOT EXISTS `test_mysql` ( `id` int(11) NOT NULL AUTO_INCREMENT, `from_user` varchar(40) DEFAULT NULL, `account` varchar(40) DEFAULT NULL, `password` varchar(40) DEFAULT NULL, `update_time` datetime DEFAULT NULL, PRIMARY KEY (`id`), UNIQUE KEY `from_user` (`from_user`));
phpMyAdmin 操作
数据库及数据表的创建到此结束,下面将编写代码对数据库及数据表的使用做详细讲解。
四、官方示例(PHP MySQL)
BAE 官方提供的demo(PHP MySQL)示例如下:
mysql/basic.php 文件内容
<!--"Connect Server Failed:".$this->mysqli->error); } $this->mysqli->query("set names utf8"); } //dql statement function execute_dql($query){ $res = $this->mysqli->query($query) or die("操作失败".$this->mysqli->error); return $res; //$this->mysqli->close(); } //dml statement function execute_dml($query){ $res = $this->mysqli->query($query) or die("操作失败".$this->mysqli->error); if(!$res){ return 0;//失败 }else{ if($this->mysqli->affected_rows > 0){ return 1;//执行成功 }else{ return 2;//没有行受影响 } } //$this->mysqli->close(); } } ?>
九、测试类的使用
9.1 测试DML操作
测试代码:
<!--"MySQLi_BAE.class.php"; $mysqli_BAE=new MySQLi_BAE(); //**************dml******************* $sql="insert into test_mysql (from_user, account, password, update_time) values('David','860510', 'abcabc', '2013-09-27 17:14:28')"; //$sql="update test_mysql set account = 860512 where account = 860510"; //$sql="delete from test_mysql where account = 860512"; $res=$mysqli_BAE--->execute_dml($sql); if($res==0){ echo "执行失败"; }elseif($res==1){ echo "执行成功"; }else{ echo "没有行数影响"; } ?>
测试结果:
9.2 测试DQL操作
测试代码:
<!--"MySQLi_BAE.class.php"; $mysqli_BAE=new MySQLi_BAE(); //**************dql****************** $sql="select * from test_mysql"; $res=$mysqli_BAE--->execute_dql($sql); while($row=$res->fetch_row()){ foreach($row as $key=>$val){ echo "$val--"; } echo ' '; } $res->free(); ?>
测试结果:
十、实现与微信的交互(Mysqli 扩展)
10.1 前置操作
A. 引入MySQLi_BAE.class.php 文件
//引入数据库函数文件require_once "MySQLi_BAE.class.php";
B. 实例化对象
public function __construct(){ $this->mysqli_BAE=new MySQLi_BAE();}
10.2 测试插入操作
测试代码:
$insert_sql="INSERT INTO test_mysql(from_user, account, password, update_time) VALUES('$fromUsername',
'$keywords[1]','$keywords[2]','$nowtime')";$res = $this->mysqli_BAE->execute_dml($insert_sql);
测试结果:
10.3 测试查询操作
测试代码:
$select_sql="SELECT * FROM test_mysql WHERE from_user='$fromUsername'";
$select_res=$this->mysqli_BAE->execute_dql($select_sql);$rows=$select_res->fetch_array(MYSQLI_ASSOC);
测试结果:
10.4 测试更新操作
测试代码:
$update_sql="UPDATE test_mysql SET password='$new_password' WHERE from_user='$fromUsername'";
$res = $this->mysqli_BAE->execute_dml($update_sql);
测试结果:
10.5 测试删除操作
测试代码:
$delete_sql="DELETE FROM test_mysql WHERE from_user='$fromUsername'";
$res = $this->mysqli_BAE->execute_dml($delete_sql);
测试结果:
与微信交互测试成功。
十一、完整代码获取
请访问 乐思乐享 官方论坛
URL:http://pan.baidu.com/s/1c0s3Jby
十二、关注
请关注 卓锦苏州 微信公众帐号,卓锦苏州 基于BAE 平台开发,针对于主流的微信功能进行开发测试。
您可以关注 卓锦苏州 公众帐号进行功能测试,以及获取新的应用开发。
1. 登录微信客户端,通讯录 -> 添加朋友 -> 查找公众号 -> zhuojinsz,查找并关注。
2. 扫描二维码:
卓锦苏州 功能列表:
感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!
免责声明:本站资源来自互联网收集,仅供用于学习和交流,请遵循相关法律法规,本站一切资源不代表本站立场,如有侵权、后门、不妥请联系本站删除!
RTX 5090要首发 性能要翻倍!三星展示GDDR7显存
三星在GTC上展示了专为下一代游戏GPU设计的GDDR7内存。
首次推出的GDDR7内存模块密度为16GB,每个模块容量为2GB。其速度预设为32 Gbps(PAM3),但也可以降至28 Gbps,以提高产量和初始阶段的整体性能和成本效益。
据三星表示,GDDR7内存的能效将提高20%,同时工作电压仅为1.1V,低于标准的1.2V。通过采用更新的封装材料和优化的电路设计,使得在高速运行时的发热量降低,GDDR7的热阻比GDDR6降低了70%。
更新日志
- 凤飞飞《我们的主题曲》飞跃制作[正版原抓WAV+CUE]
- 刘嘉亮《亮情歌2》[WAV+CUE][1G]
- 红馆40·谭咏麟《歌者恋歌浓情30年演唱会》3CD[低速原抓WAV+CUE][1.8G]
- 刘纬武《睡眠宝宝竖琴童谣 吉卜力工作室 白噪音安抚》[320K/MP3][193.25MB]
- 【轻音乐】曼托凡尼乐团《精选辑》2CD.1998[FLAC+CUE整轨]
- 邝美云《心中有爱》1989年香港DMIJP版1MTO东芝首版[WAV+CUE]
- 群星《情叹-发烧女声DSD》天籁女声发烧碟[WAV+CUE]
- 刘纬武《睡眠宝宝竖琴童谣 吉卜力工作室 白噪音安抚》[FLAC/分轨][748.03MB]
- 理想混蛋《Origin Sessions》[320K/MP3][37.47MB]
- 公馆青少年《我其实一点都不酷》[320K/MP3][78.78MB]
- 群星《情叹-发烧男声DSD》最值得珍藏的完美男声[WAV+CUE]
- 群星《国韵飘香·贵妃醉酒HQCD黑胶王》2CD[WAV]
- 卫兰《DAUGHTER》【低速原抓WAV+CUE】
- 公馆青少年《我其实一点都不酷》[FLAC/分轨][398.22MB]
- ZWEI《迟暮的花 (Explicit)》[320K/MP3][57.16MB]