python数据管理系统,python 数据库管理

  python数据管理系统,python 数据库管理

  文档:欢迎来到睡魔2的文档!— sandman2 0.0.1文档

  [安装]

  pip安装睡魔2

  成功安装后,您可以获得一个sandman2ctl命令行工具来启动RESTful API服务器。

  sand 2 CTL SQLite PySQLite://data . db启动后默认端口为5000,访问地址为http://localhost:5000/admin,可以看到服务器控制台。

  [数据库连接]

  Sandman2基于SQLAlchemy,所以它使用连接Url来连接数据库。

  格式是

  方言驱动://用户名:密码@主机:端口/数据库

  方言就是数据库类型,比如mysql,SQLite等。driver是数据库驱动模块名,如pymysql、psycopg2、mysqldb等。如果省略,则意味着使用默认驱动程序。

  例如:MySQL

  桑德曼2ctl

  MyMySQL://Bob:Bob passwd @ localhost:3306/TestDB注意:如果环境中没有安装pymysql模块,必须安装后才能正常启动。其他数据库的连接方法请参考SQLAlchemy的引擎配置章节。检查这里的https://docs.sqlalchemy.org/en/13/core/engines.html。

  控制台需要快速预览数据,如果只是简单调整数据就非常有用。

  在菜单的左侧,除了Home,其他所有名称都是库表名称。

  点击对应的库表名称,表中的数据会显示在右边,可以进行增删改操作。

  从API RESTful的角度来看,库表相当于一个资源,一组资源相当于一个集合。

  查询Http GET方法返回JSON格式的数据,比如student表的所有记录:

  $ curl http://localhost:5000/学生/

  {resources: [{age: 18, class: 1 , id: 1, name: \ u5f20 \ u4e09 , profile : \ u64c 5 \ u957f \ u5b 66 \ u4e 60

  分页是通过参数page来完成的,比如返回学生表的第一页数据。

  $ curl http://localhost:5000/student/?页面=1

  {resources: [{age: 18, class: 1 .显示参数限制返回的行数。

  如果要获取特定的记录,可以使用主键值作为段,例如,获取id为3的学生记录。

  $ curl http://localhost:5000/学生/3

  {age: 18, class: 2 , id: 3, name: \ u738b \ u4e94 , profile: \ u7231 \ u7f16 \ u7a0b}以字段名为参数,相当于查询条件,

  $ curl http://localhost:5000/student/?姓名=汤姆

  {resources:[{age:19, class:1 , id:7, name:Tom , profile :帅 }]}

  查询条件可以组合,例如查询班级为1,18岁学生为:

  $ curl http://localhost:5000/student/?{resources:[{age:19, class:1 , id:2, name:\u674e\u56db , profile : \ u559c \ u6b 22 \ u7 bee \ u 7403 },{age:19, class:1 , id:7, name:Tom , profile :帅 }]}

  修改后的POST方法用于添加新的内容,该内容由请求的数据部分提供,例如添加一个学生信息:

  $ curl -X POST -d {name: Lily , age: 17, class:1, profile : Likely } -H Content-Type:application/JSON http://127 . 0 . 0 . 1:5000/student/

  { 年龄:17,类别: 1 , id:8,姓名:莉莉,个人资料:可能 }

  注意:库表主键是自增长的,所以可以忽略主键字段,否则必须提供。

  PATCH方法用于更新,更新内容,由请求的数据部分提供,比如将id为1的学生类改为3。

  注意:更新时,主键信息由url的主键值段提供,而不是在数据段中。

  $ curl-X PATCH-d { class :3 } -H Content-Type:application/JSON http://127 . 0 . 0 . 1:5000/student/1

  { 年龄:18,类别: 3 , id:1,姓名: \u5f20\u4e09 ,个人资料: \u64c5\u957f\u5b66\u4e60}

  因删除而删除方法,如删除id为8的学生记录:

  $ curl -X DELETE -H 内容类型:应用程序/JSON http://127 . 0 . 0 . 1:5000/student/8

  其他接口获取表的字段定义信息,通过元段获取,比如获取学生表的字段定义:

  $ curl http://127 . 0 . 0 . 1:5000/学生/元

  {age:INTEGER(11), class:VARCHAR(255), id:INTEGER(11)(必需), name:VARCHAR(255), profile:VARCHAR(500)}

  导出数据,通过查询字段导出得到,数据格式为csv。例如,导出学生数据并将其存储在student.csv文件中:

  $ curl-o student . CSV http://127 . 0 . 0 . 1:5000/student/?出口

  % Total % Received % Xferd平均速度时间时间当前

  Dload上传总花费左速度

  100 202 100 202 0 0 2525 0 - : - : - - : - : - - : - : - 2525

郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。

留言与评论(共有 条评论)
   
验证码: