制作自己的数据库接口
一直看到网上有q绑查询什么的,于是自己想建一个数据库测试接口。在网上搜索相关教程,要么就是收费的,要么就是一些做项目接口的,工程量特别大。简单的有一些图床的接口,但是就是没有我想要的教程,于是自己想办法琢磨,最终制作出来了一个数据库接口,现把制作方法免费分享给大家。(请大家关注我的公众号:For My Future)
流程简介
我所做的是把一个txt文档通过Navicat for MySQL转换成sql文件,然后把这个数据库文件放到自己的网站上,通过php中的sql语句实现数据库的连接及查询,并返回json格式的数据,如下图所示
http://39.101.69.250:88/qq.php?qq=1216951671
http://39.101.69.250:88/qq.php?qq=111111
只要你会api的调用,看到这就知道该如何使用这个接口了,那么现在开始详细的教程。
一.sql文件转换
在进行转换之前,首先你要有自己的数据,并且安装好Navicat for MySQL,这款软件早在大二上数据库技术这门课的时候我就安装在电脑上,所以安装教程我已经不记得了,各位可以上网搜索安装教程。
这是我的测试数据,
可以看到,它的格式还是比较规整的,中间用----符号隔开。
打开Navicat for MySQL,连接到本地数据库(网上有教程),随便新建选择一个表,会出现一个导入向导的按钮,点击它。
下一步
选择数据导入,点击下一步
第二个栏位分隔符换成其他符号- ,点击下一步
这里没有栏位名填0,第一个数据行填1,不用填最后一个数据行。其它不用动,点击下一步
点下一步到这个界面,将f2,f3,f4的勾选框都去掉,点击下一步
一直点击下一步到最后,点击开始,
完成后关闭来到Navicat for MySQL,确定下表的结构
接下来添加栏位名,右键选择设计表
修改栏位名,
可以看到名字已经修改了,
接着右键选择表,转储sql文件,选择结构和数据
这时我们得到了sql文件。
二.sql文件上传到服务器
来到我们的宝塔界面,添加数据库,
这里把访问权限改成所有人,点击提交
导入sql文件,从本地上传并导入
三.api接口制作
接口其实就是一个php文件,只不过我要调试运行php代码,所以要安装它的运行环境,花了很长时间。由于代码已经调试成功了,大家可以不用安装php运行环境了,直接把php文件放入到服务器让服务器运行即可。(第一次接触php语言,代码比较烂,注释都在代码里)
connect_error){ die("无法连接数据库"); } $qq;$fanhui = array();$res = array('error'=>false); if(isset($_GET['qq'])){ //这个$_GET['qq']就是得到你输入网址http://39.101.69.250:88/qq.php?qq=1216951671最后的1216951671 $qq = $_GET['qq']; $result =$link->query("SELECT number FROM `number` WHERE qq=$qq"); //sql语句查询,第一个number是你要得到的栏位名,第二个是表名 //var_dump($result); while($row = $result->fetch_assoc()){ array_push($fanhui,$row); } // var_dump($fanhui); $res['phone']=$fanhui;} $link->close(); header("Content-type:application/json"); echo json_encode($res); //json返回 die();?>
回到宝塔界面,添加站点
放行端口要回到阿里云主机配置安全组规则,放行相应端口(详见上一篇建站教程),我的是放行85端口。
这里直接上传刚才的php文件即可
来测试一下
很顺利获得结果,qq-副本.php就是自己上传的php文件名,这样就做出来一个数据库接口了。
更多教程请关注我的公众号:For My Future
来源地址:https://blog.csdn.net/qq_43974059/article/details/126272234
免责声明:
① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。
② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341