简单的连接MySQL与Python的Bottle框架的方法
作者:JohnnyHu90 发布时间:2024-01-27 23:49:40
标签:Python
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中自带的一种数据结构,在使用列表时,拷贝操作不可避免,下面简单讨论一下列表的深复制(拷贝)与浅复制首先看
- 一、修改操作系统核心参数在Root用户下执行以下步骤:1)修改用户的SHELL的限制,修改/etc/security/limits.conf
- 我们都有过函数调用的经历,那么call调用类实例的过程就跟函数很相似。类的用法很多人都知道了,类实例又是什么呢?可以把类看成一个设计图,类实
- 所谓线性最小二乘法,可以理解为是解方程的延续,区别在于,当未知量远小于方程数的时候,将得到一个无解的问题。最小二乘法的实质,是保证误差最小的
- 实现神经网络的权重和偏置更新,很重要的一部就是使用BackPropagation(反向传播)算法。具体来说,反向传播算法就是用误差的反向传播
- 网站标准(或称“WEB标准”)对于每一个开发网站和做网页的人来说,都是不可忽视的,这不仅是一个潮流,而是一个标准,一个更加符合规范的做法,而
- 由于:Django处理静态文件不太友好;以后有可能需要处理php或者其他资源的请求;所以考虑结合nginx,使用nignx做它擅长的路由分发
- join toString该两种方法会将数组元素的类型转换为字符串var arr = [1, [2, [3, [4, 5]]], 6];co
- 1.按姓氏笔画排序:Select * From TableName Order By CustomerName Collate Chines
- 很简单,只需建立一个worksheet和Excel相关的信息就可以了具体代码见下:<%set xlApp =&nb
- 通过学习私有函数与私有变量,可以更好的完善 类的开发 ,从而丰满我们的场景与实现方案。什么是私有函数和私有变量私有函数与私有变量中的私有是什
- 中文简繁体网页的转换FrontPage 2002提供了中文简繁体转换的功能。只要轻轻一点就可做出简体或繁体中文网站了。如要将当前
- 这篇文章主要介绍了python主线程与子线程的结束顺序实例解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,
- python修改图像分辨率大小图像分辨率指图像中存储的信息量,是每英寸图像内有多少个像素点,分辨率的单位为PPI(Pixels Per In
- 一段重用很高的ajax代码,可以套用 <!DOCTYPE HTML
- 当请求访问到某个视图时,我们想让它重定向到其他页面,应该怎么做呢?1.HttpResponseRedirect需求:当我们访问127.0.0
- 本文实例为大家分享了使用RNN进行文本分类,python代码实现,供大家参考,具体内容如下1、本博客项目由来是oxford 的nlp 深度学
- 你已经在上面取出w打头记录的例子中看到了LIKE的用法。LIKE判定词是一个非常有用的符号。不过,在很多情况下用了它可能会带给你太多的数据,
- MongoDB是由C++语言编写的非关系型数据库,是一个基于分布式文件存储的开源数据库系统,其内容存储形式类似JSON对象,它的字段值可以包
- 一、算法 1、算法的主要思想就是将一个中缀表达式(Infix expression)转换成便