java中的接口是类吗
469
2022-09-01
python之数据库管理工具sandman2(python数据管理系统)
文档:Welcome to sandman2’s documentation! — sandman2 0.0.1 documentation
【安装】
pip install sandman2
安装成功后,就可以得到一个 sandman2ctl 命令行工具,用它来启动一个 RESTful API 服务器
sandman2ctl sqlite+pysqlite:///data.db
启动之后,默认端口是 5000,访问地址是 是基于 SQLAlchemy 的,所以使用连接 Url 来连接数据库
格式为
dialect+driver://username:password@host:port/database
dialect 为数据库类型,如 mysql、SQLite 等driver 为数据库驱动模块名,例如 pymysql、psycopg2、mysqldb 等,如果忽略,表示使用默认驱动
例如:MySQL
sandman2ctl mysql+pymysql://bob:bobpasswd@localhost:3306/testdb
注意点:如果环境中没有安装 pymysql 模块,必须先安装,才能正常启动,其他数据库的连接方式可参考 SQLAlchemy 的 引擎配置 章节, 在这里查看 Home 外,其他的都是库表名称
API
以 RESTful 的角度来看,库表相当于资源(resource),一组资源相当于集合(collection)
查询
通过 Http GET 方法,以 JSON 格式将数据返回,例如返回 学生表 student 的所有记录:
$ curl {"resources":[{"age":18,"class":"1","id":1,"name":"\u5f20\u4e09","profile":"\u64c5\u957f\u5b66\u4e60"},...
注意:资源要以 / 结尾
通过参数 page 来分页,例如返回 学生表 student 的第一页数据
$ curl id 为 3 的学生记录
$ curl Tom 的学生记录:
$ curl 1 年龄为 18 的学生:
$ curl curl -X POST -d '{"name": "Lily", "age": 17, "class":1, "profile":"Likely"}' -H "Content-Type: application/json" id 为 1 的学生班级更改为 3
注意: 更新时主键信息通过 url 的主键值节段提供,而不在数据部分中$ curl -X PATCH -d '{"class":3}' -H "Content-Type: application/json" id 为 8 的学生记录:$ curl -X DELETE -H "Content-Type: application/json" student 的字段定义:$ curl (required)","name":"VARCHAR(255)","profile":"VARCHAR(500)"} 导出数据,通过查询字段 export 获取,数据格式为 csv,例如导出学生数据,存放到 student.csv 文件中: $ curl -o student.csv % Total % Received % Xferd Average Speed Time Time Time Current Dload Upload Total Spent Left Speed100 202 100 202 0 0 2525 0 --:--:-- --:--:-- --:--:-- 2525
版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。
发表评论
暂时没有评论,来抢沙发吧~