简单的连接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获取GY-85九轴模块信息示例
Dec 05 Python
python自定义异常实例详解
Jul 11 Python
Python3学习urllib的使用方法示例
Nov 29 Python
Python3.6简单反射操作示例
Jun 14 Python
Python实战购物车项目的实现参考
Feb 20 Python
在python中实现调用可执行文件.exe的3种方法
Jul 07 Python
Python 下载及安装详细步骤
Nov 04 Python
python获取array中指定元素的示例
Nov 26 Python
Django在Model保存前记录日志实例
May 14 Python
sklearn的predict_proba使用说明
Jun 28 Python
深度学习小工程练习之垃圾分类详解
Apr 14 Python
numpy array找出符合条件的数并赋值的示例代码
Jun 01 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
php使用file函数、fseek函数读取大文件效率对比分析
2016/11/04 PHP
PHP实现浏览器中直接输出图片的方法示例
2018/03/14 PHP
Thinkphp自定义生成缩略图尺寸的方法
2019/08/05 PHP
Laravel 登录后清空COOKIE的操作方法
2019/10/14 PHP
Extjs4 GridPanel的主要配置参数详细介绍
2013/04/18 Javascript
JavaScript计算字符串中每个字符出现次数的小例子
2013/07/02 Javascript
购物车选中得到价格实现示例
2014/01/26 Javascript
JS取request值以及自动执行使用示例
2014/02/24 Javascript
JavaScript获取当前网页标题(title)的方法
2015/04/03 Javascript
js代码实现点击按钮出现60秒倒计时
2021/01/28 Javascript
bootstrap table小案例
2016/10/21 Javascript
jQuery利用sort对DOM元素进行排序操作
2016/11/07 Javascript
AngularJS中isolate scope的用法分析
2016/11/22 Javascript
详解js树形控件—zTree使用总结
2016/12/28 Javascript
微信小程序上滑加载下拉刷新(onscrollLower)分批加载数据(一)
2017/05/11 Javascript
微信小程序使用navigateTo数据传递的实例
2017/09/26 Javascript
在vue-cli项目中使用bootstrap的方法示例
2018/04/21 Javascript
微信小程序实现省市区三级地址选择
2020/06/21 Javascript
vue实现新闻展示页的步骤详解
2019/04/11 Javascript
JS数组降维的实现Array.prototype.concat.apply([], arr)
2020/04/28 Javascript
js实现随机点名
2021/01/19 Javascript
python实现多人聊天室
2020/03/31 Python
python最小生成树kruskal与prim算法详解
2019/01/17 Python
PyQt弹出式对话框的常用方法及标准按钮类型
2019/02/27 Python
Python的numpy库下的几个小函数的用法(小结)
2019/07/12 Python
Django Form 实时从数据库中获取数据的操作方法
2019/07/25 Python
python文档字符串(函数使用说明)使用详解
2019/07/30 Python
Flask和pyecharts实现动态数据可视化
2020/02/26 Python
python正则表达式实例代码
2020/03/03 Python
使用 css3 transform 属性来变换背景图的方法
2019/05/07 HTML / CSS
企事业单位求职者的自我评价
2013/12/28 职场文书
奶茶店创业计划书范文
2014/01/17 职场文书
函授大学生自我鉴定
2014/02/05 职场文书
python如何在word中存储本地图片
2021/04/07 Python
SQL Server #{}可以防止SQL注入
2022/05/11 SQL Server
python中 Flask Web 表单的使用方法
2022/05/20 Python