您现在的位置是:首页 > 正文

tornado mysql 操作_tornado 数据库操作

2024-01-30 22:27:29阅读 0

tornado是python的web框架,web程序开发中数据库操作是必须的。

安装:

tornado的官方文档中提供的说明比较少,而且提供的模块中未找到数据库方面的模块,难道没有针对数据库操作进行封装?百度查询了一下才发现,tornado在升级过程中把数据库模块独立出来了。

模块为torndb模块。模块git地址:https://github.com/bdarnell/torndb    官方文档地址:http://torndb.readthedocs.org/en/latest/_modules/torndb.html

安装方法:执行命令 pip install torndb ,但是这个命令默认读取的是pypi站的索引,但是其访问不是很稳定。所以这里可以采用豆瓣的pypi索引。命令如下:

pip install -i http://pypi.douban.com/simple/  torndb

所以以后pypi站索引无法访问的时候尝试利用豆瓣的pypi索引。

使用:

连接数据库

import torndb

db=torndb.Connection(hostaddress,database name,user,password)

查询

查询有两种查询方式,一种为get,一种为query,get是得到一行数据。query是得到一列数据。get返回数据为封装好的dict,query得到的数据为封装好的list,单元为dict。

>>> a=db.get('select * from query where id=1')

>>> a

{'queryc': 'dac', 'id': 1}

>>> a=db.query('select * from query')

>>> a

[{'id': 2, 'queryc': 'isca'}, {'id': 1, 'queryc': 'dac'}]

执行sql语句

下面的命令是无返回参数的执行sql语句的方法。

string='dac'

str='insert into query(id,queryc)values(%d,"%s")'%(1,string)

db.execute(exe)

MySQL命令行操作创建数据库和表的时候指定编码的命令

数据库

mysql> CREATE DATABASE IF NOT EXISTS my_db DEFAULT CHARSET utf8 COLLATE utf8_general_ci;

数据表

mysql> CREATE TABLE my_table (name VARCHAR(20) NOT NULL) type=MyISAM DEFAULT CHARSET utf8;

网站文章

  • 各种排序算法的时间复杂度和空间复杂度

    各种排序算法的时间复杂度和空间复杂度

    2024-01-30 22:27:20
  • 机器学习入门与Python实战(四):K近邻分类(KNN)

    机器学习入门与Python实战(四):K近邻分类(KNN)

    目录现实问题:“物以类聚,人以群分”一.KNN算法概述二.KNN算法介绍K近邻分类模型算法步骤距离计算方式KNN分类图K值选择三.KNN特点KNN算法的优势和劣势知识巩固Python实战:KNN数据分...

    2024-01-30 22:26:51
  • HTTP1.0 HTTP 1.1 HTTP 2.0主要区别

    HTTP1.0 HTTP 1.1主要区别长连接HTTP 1.0需要使用keep-alive参数来告知服务器端要建立一个长连接,而HTTP1.1默认支持长连接。HTTP是基于TCP/IP协议的,创建一个TCP连接是需要经过三次握手的,有一定的开销,如果每次通讯都要重新建立连接的话,对性能有影响。因此最好能维持一个长连接,可以用个长连接来发多个请求。节约带宽HTTP 1.1支持只发送he...

    2024-01-30 22:26:45
  • Ansible安装与配置(自动化运维管理工具) 热门推荐

    Ansible安装与配置(自动化运维管理工具) 热门推荐

    原文链接:http://blog.csdn.net/xyang81/article/details/51568227Ansible是一个简单高效的自动化运维管理工具,用Python开发,能大批量管理N...

    2024-01-30 22:26:39
  • 在Vue中封装一个select组件 热门推荐

    在Vue中封装一个select组件 热门推荐

    我们使用iview封装一个select组件 封装的是每一个select下拉框 <template> <div class='select'> <i-select :model.sync='selecteddata' :placeholder='placeholdertext' filterable multiple...

    2024-01-30 22:25:59
  • jsp ajax不返回数据,【100分】ajax在jsp页面接受不到数据解决方法

    当前位置:我的异常网» Java Web开发»【100分】ajax在jsp页面接受不到数据解决方法【100分】ajax在jsp页面接受不到数据解决方法www.myexceptions.net网友分享于:2013-03-20浏览:42次【100分】ajax在jsp页面接受不到数据大家帮我看看是哪的问题啊 ,我刚接触ajax-------jsp页面--------var xmlHttp;f...

    2024-01-30 22:25:53
  • jquery autocomplete前后台整合实例(1)

    最近在做项目时需要用到搜索自动提示,例如姓名查找模糊匹配提示。目前Jquery的自动提示插件非常多,我会例举几款,写出一些与后台交互的例子本文介绍一款Jquery autocomplete官方地址:https://github.com/devbridge/jQuery-Autocomplete下面直接来实例,不玩虚的,不参与后台交互的这里就不做介绍了,本文涉及的后台开发语言是java,

    2024-01-30 22:25:44
  • hadoop安装教程,分布式配置 CentOS7 Hadoop3.1.2

    hadoop安装教程,分布式配置 CentOS7 Hadoop3.1.2

    安装前的准备 1、 准备4台机器、或虚拟机 4台机器的名称和IP对应如下 master:192.168.199.128 slave1:192.168.199.129 slave2:192.168.199.130 slave3:192.168.199.131 2、分别为4台机器安装JDK8 步骤详细请参考:CentOS7卸载 OpenJDK 安装Sun的JDK...

    2024-01-30 22:25:11
  • 【OpenCV3】阈值化操作——cv::threshold()与cv::adaptiveThreshold()详解

    【OpenCV3】阈值化操作——cv::threshold()与cv::adaptiveThreshold()详解

    阈值化操作在图像处理中是一种常用的算法,比如图像的二值化就是一种最常见的一种阈值化操作。opencv2和opencv3中提供了两种阈值化操作接口,即cv::thread()与cv::adaptiveThreshold(),这里将对这两个接口进行介绍和对比。

    2024-01-30 22:25:04
  • 基于darknet的目标检测开发说明书

    1. 测试darknet1) 利用python版本的darknet清楚YOLO V3的输出.其中要修改一下加载meta数据集, 即*.data中的*.names文件路径. 在测试过程中, 我们将用到meta.classes, meta.names. 这些信息都在*.data中定义了. 经过测试, 对于一张头像而言, YOLO V3的输出格式为:[('car', 0.9995980858802...

    2024-01-30 22:24:58