欢迎访问 生活随笔!

生活随笔

当前位置: 首页 > 运维知识 > 数据库 >内容正文

数据库

python访问mysql_python连接mysql

发布时间:2023/12/10 数据库 55 豆豆
生活随笔 收集整理的这篇文章主要介绍了 python访问mysql_python连接mysql 小编觉得挺不错的,现在分享给大家,帮大家做个参考.

首先需要导入驱动模块

打开cmd导入模块 pip install mysqldb(pymysql)

python2.x版本--------->mysqldb

python3.x版本---------->pymysql

python调用MySQL数据库总共五步

1、导入模块(驱动) pymysql  mysqldb

2、获取连接 connect

3、获取游标cursor

4、执行sql execute 并且返回结果

5、关闭资源

====================================================================

#python 调用mysql帮助类  连接数据库 创建数据查询更新的方法

#创建一个数据库帮助类

#导入pymysql模块

import pymysql

#创建类

class sqlHelper:

#初始化属性

def __init__(self,host,db,user,pwd):

self.host = host

self.port = 3306

self.db = db

self.user = user

self.pwd = pwd

self.charset = 'utf8'

#创建数据库连接 创建游标

def connection(self):

self.conn = pymysql.connect(host = self.host,port = self.port,db = self.db,user = self.user,

password = self.pwd,charset = self.charset)

self.cursor = self.conn.cursor()

return 'OK'

#创建查询一条数据的方法

def queryOne(self,sql,params):

#首先连接数据库 获取游标

try:

self.connection()

#执行sql语句

count = self.cursor.execute(sql,params)

#返回执行结果

res = self.cursor.fetchone()

return  count,res

except Exception as  ex:

print('失败,失败信息是:',ex)

finally:

#调用关闭资源的方法

self.closes()

#创建查询多条数据的方法

def queryAll(self,sql,params):

try:

#连接数据库

self.connection()

#执行sql语句

count = self.cursor.execute(sql,params)

#获取结果

res = self.cursor.fetchall()

return count,res

except Exception as e:

print('查询失败 失败信息是:',e)

finally:

#调用关闭资源的方法

self.closes()

#创建修改数据库的方法

def update(self,sql,params):

try:

# 连接数据库

self.connection()

# 执行sql语句

count = self.cursor.execute(sql,params)

#把事物(更新的信息写入数据库)

self.conn.commit()

return count

except Exception as e:

print('查询失败 失败信息是:', e)

#如果更新失败 数据库就返回到更新之前的数据

self.conn.rollback()

finally:

# 调用关闭资源的方法

self.closes()

#定义关闭资源的方法

def closes(self):

if self.cursor != None:

self.cursor.close()

if self.conn != None:

self.conn.close()

================================================================================================

测试数据库帮助类的文档:

'''

python调用mysql分为五个步骤

1、导入pymysql模块

2、获取连接 connect

3、获取游标 curs

4、执行SQL execute 并返回结果

5、关闭资源

'''

#定义用户操作数据库的一些方法

import sqlHelper

import sys

#创建连接对象  host,db,user,pwd

helper = sqlHelper.sqlHelper('localhost','db_py1712','root','root')

#print(helper.connection())

# a,s = helper.queryOne('select * from t_stumessage',[])

# print(s)

# a = helper.update('insert into t_stumessage VALUES (uuid() ,%s,%s,%s,%s,%s)',['陈乐乐',123456,21,'男','万方学院'])

# print(a)

# a,s = helper.queryAll('select * from t_stumessage',[])

# print(s)

#用户注册

def register(user):

#首先查询数据库中是否存在该用户名

#查询表中所有用户名

count,res = helper.queryAll('select username from t_stumessage',[])

#遍历元组 判断输入的用户名是否存在

bn = False

for u in res:

# print(u)

# print(type(u))

if u[0] != user:

bn = True

if bn == False:

pwd = int(input('请输入密码'))

age = int(input('请输入年龄'))

sex = input('请输入性别')

school = input('请输入学校名称')

#把用户输入的信息写如到数据库表中

# s = helper.connection()

# print(s)

count = helper.update('insert into t_stumessage VALUES (uuid() ,%s,%s,%s,%s,%s)',[user,pwd,age,sex,school])

if count > 0:

print('注册成功')

else:

print('注册失败')

else:

print('你输入的用户名已经存在,请重新输入')

#register('王少松')

#用户登录

def login(user,pwd):

#查询表中的用户名和密码 判断与用户输入的信息是否匹配

count,res = helper.queryAll('select username,pwd from t_stumessage ',[])

return count,res

#遍历res

# bn = False

# for u in res:

#    if u[0] == user and u[1] == pwd:

#        bn =True

# if bn == True:

#    print('登录成功')

# else:

#    print('用户名或密码错误,登录失败')

# u = input()

# s = input()

# login(u,s)

#用户列表 根据用户名查看用户自己的基本信息

def messages(user):

count,res = helper.queryOne('select * from t_stumessage where userName = %s',(user,))

return count,res

# if count > 0:

#    return res

# else:

#    print('查询失败')

#messages('赵娇娇')

#用户修改  根据用户名修改密码

def update(user,pwd):

count = helper.update('update t_stumessage set pwd = %s WHERE username = %s',[pwd,user])

#print(count)

if count > 0:

print('修改成功')

else:

print('修改失败')

#update('赵娇娇','123123')

#用户删除 根据用户名删除用户信息

def dels(user):

count = helper.update('delete from t_stumessage WHERE username = %s',(user,))

if count > 0:

print('删除成功')

else:

print('删除失败')

#dels('赵娇娇')

#用户退出

def exit():

print('退出')

sys.exit()

#exit()

========================================================================

总结

以上是生活随笔为你收集整理的python访问mysql_python连接mysql的全部内容,希望文章能够帮你解决所遇到的问题。

如果觉得生活随笔网站内容还不错,欢迎将生活随笔推荐给好友。