简单的连接MySQL与Python的Bottle框架的方法


Posted in Python onApril 30, 2015

Python关于mySQL的连接插件众多,Bottle下也有人专门开发的插件:bottle-mysql具体使用方法见官方,总共感觉其用法限制太多,其使用起来不方便,最适合的当然是,mySQL官网给Python提供的通用官方驱动,用起来很顺手:mysql-connector  具体操作如下:
 

# -*- coding: utf-8 -*-
#!/usr/bin/python
# filename: login_admin.py
# codedtime: 2014-9-7 11:26:11

import bottle
import mysql.connector  # 导入mysql数据库连接器

def check_userinfo():
  a_list = []  # 创建一个空列表
  username = bottle.request.GET.get('loginname','').strip() # 用户名
  password = bottle.request.GET.get('password','').strip()  # 密码
  if username is not None or password is not None:
    try:
      # 连接数据库 
      conn = mysql.connector.connect(user='root', password='123456', database='myblog')   
      cursor = conn.cursor() # 创建数据游标
      
      # 执行查询
      query = ("SELECT username, password FROM mb_users "
           "WHERE username=%s and password=%s")
      cursor.execute(query, (username, password))

      a_list = cursor.fetchall() # fetchone获取一个元组
      #count = int(cursor.rowcount) # 获取元组个数 
      return a_list

    except mysql.connector.Error as err:
      print("Something went wrong: {}".format(err))
      exit()
      
    finally:
      conn.commit() # 提交修改
      cursor.close() # 关闭数据库
      conn.close()
  else:
    return a_list

def login_admin():
  if bottle.request.GET.get('bs-submit','').strip(): #点击登录按钮
    a_list = check_userinfo()
    if a_list:
      a_name = a_list[0][0] # 获得用户名
      return bottle.template('templates/index_user.tpl', username = a_name)
    else:
      return bottle.template('templates/login_admin.tpl', action='/login_admin', 
              error_info='请输入正确的用户名或密码!')
  else:
    return bottle.template('templates/login_admin.tpl', action='', error_info=' ')

    
以上是MySQL在Botlle中的简单用法,

顺便提一下:安装和管理mySQL,建议安装使用XAMPP,XAMPP集成了Apache, MySQL、PHP、Tomcat等多种工具,一次性解决安装,不用自己繁琐的一个个安装和配置,而且管理也很方便。XAMPP安装的MySQL默认用户是:root  密码为空。

Python 相关文章推荐
python Crypto模块的安装与使用方法
Dec 21 Python
Python+selenium实现截图图片并保存截取的图片
Jan 05 Python
python中pika模块问题的深入探究
Oct 13 Python
解决python 未发现数据源名称并且未指定默认驱动程序的问题
Dec 07 Python
Pycharm设置utf-8自动显示方法
Jan 17 Python
python登录WeChat 实现自动回复实例详解
May 28 Python
python把ipynb文件转换成pdf文件过程详解
Jul 09 Python
Cython编译python为so 代码加密示例
Dec 23 Python
Keras load_model 导入错误的解决方式
Jun 09 Python
python 删除excel表格重复行,数据预处理操作
Jul 06 Python
python使用多线程查询数据库的实现示例
Aug 17 Python
用python制作个音乐下载器
Jan 30 Python
Python的Bottle框架中实现最基本的get和post的方法的教程
Apr 30 #Python
Python中使用Beautiful Soup库的超详细教程
Apr 30 #Python
Python中正则表达式的详细教程
Apr 30 #Python
详解在Python程序中使用Cookie的教程
Apr 30 #Python
处理Python中的URLError异常的方法
Apr 30 #Python
介绍Python的Urllib库的一些高级用法
Apr 30 #Python
python插入数据到列表的方法
Apr 30 #Python
You might like
Zend Framework教程之模型Model基本规则和使用方法
2016/03/04 PHP
PHP5.5安装PHPRedis扩展及连接测试方法
2017/01/22 PHP
PHP+fiddler抓包采集微信文章阅读数点赞数的思路详解
2019/12/20 PHP
jQuery EasyUI API 中文文档 - Draggable 可拖拽
2011/09/29 Javascript
给页面渲染时间加速 干掉Dom Level 0 Event
2012/12/19 Javascript
js不能跳转到上一页面的问题解决方法
2013/03/01 Javascript
jquery实现仿JqueryUi可拖动的DIV实例
2015/07/31 Javascript
JS简单限制textarea内输入字符数量的方法
2015/10/14 Javascript
利用Angular.js限制textarea输入的字数
2016/10/20 Javascript
基于Javascript倒计时效果
2016/12/22 Javascript
微信小程序开发的四十个技术窍门总结(推荐)
2017/01/23 Javascript
微信小程序 ecshop地址三级联动实现实例代码
2017/02/28 Javascript
nodejs入门教程一:概念与用法简介
2017/04/24 NodeJs
如何在AngularJs中调用第三方插件库
2017/05/21 Javascript
基于substring()和substr()的使用以及区别(实例讲解)
2017/12/28 Javascript
解决layui中onchange失效以及form动态渲染失效的问题
2019/09/27 Javascript
微信小程序复选框实现多选一功能过程解析
2020/02/14 Javascript
解决VueCil代理本地proxytable无效报错404的问题
2020/11/07 Javascript
Python作用域用法实例详解
2016/03/15 Python
python如何读写csv数据
2018/03/21 Python
对Python3中的input函数详解
2018/04/22 Python
PyQt5实现拖放功能
2018/04/25 Python
python矩阵转换为一维数组的实例
2018/06/05 Python
使用python将时间转换为指定的格式方法
2018/11/12 Python
详解Python函数式编程—高阶函数
2019/03/29 Python
python中strip(),lstrip(),rstrip()函数的使用讲解
2020/11/17 Python
Python中对象的比较操作==和is区别详析
2021/02/12 Python
一个不错的HTML5 Canvas多层点击事件监听实例
2014/04/29 HTML / CSS
波兰快递服务:Globkurier.pl
2019/11/08 全球购物
俄罗斯第一家多品牌在线奢侈品精品店:Aizel.ru
2020/09/06 全球购物
中学教师培训制度
2014/01/31 职场文书
银行优秀员工事迹
2014/02/06 职场文书
2014年服装销售工作总结
2014/11/27 职场文书
2016入党积极分子考察评语
2015/12/01 职场文书
2016优秀护士先进个人事迹材料
2016/02/25 职场文书
Python使用pyecharts控件绘制图表
2022/06/05 Python