您的位置:首页 > 财经 > 产业 > 广州是不是又有疫情了_软件开发培训机构招生技巧_seo1现在怎么看不了_淘宝seo搜索引擎原理

广州是不是又有疫情了_软件开发培训机构招生技巧_seo1现在怎么看不了_淘宝seo搜索引擎原理

2025/3/13 0:15:25 来源:https://blog.csdn.net/m0_74823507/article/details/146150504  浏览:    关键词:广州是不是又有疫情了_软件开发培训机构招生技巧_seo1现在怎么看不了_淘宝seo搜索引擎原理
广州是不是又有疫情了_软件开发培训机构招生技巧_seo1现在怎么看不了_淘宝seo搜索引擎原理

Python高级

文章目录
  • Python高级
    • python操作数据库mysql-connector
      • demo_mysql_test.py:
    • pyMysql

python操作数据库mysql-connector

本章节为大家介绍使用 mysql-connector 来连接使用 MySQL, mysql-connectorMySQL 官方提供的驱动器。

可以使用 pip 命令来安装 mysql-connector

python -m pip install mysql-connector

使用以下代码测试 mysql-connector 是否安装成功:

demo_mysql_test.py:

import mysql.connector

执行以上代码,如果没有产生错误,表明安装成功。

注**意:**如果你的 MySQL 是 8.0 版本,密码插件验证方式发生了变化,早期版本为 mysql_native_password,8.0 版本为 caching_sha2_password,所以需要做些改变:

先修改 my.ini 配置:

[mysqld]
default_authentication_plugin=mysql_native_password

然后在 mysql 下执行以下命令来修改密码:

ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '新密码';

# mysql-connect testimport mysql.connectormysqlDb = mysql.connector.connect(host='localhost',user='root',password='Lh_198571',database = 'db_python'
)# 创建数据库
def createDb(mysqlDb):cursor = mysqlDb.cursor()cursor.execute("create database db_python2")print('数据库创建成功')# createDb(mysqlDb)# 查看数据库
def showDb(mysqlDb):cursor = mysqlDb.cursor()cursor.execute("SHOW DATABASES")for i in cursor:print(i)# showDb(mysqlDb)# 创建表
# 创建表必须选中数据库才能创建,因此在创建表时,必须在connect中添加database指定数据库
def createTable(mysqlDb):cursor = mysqlDb.cursor()cursor.execute("CREATE TABLE tb_user(id int not null primary key auto_increment,name varchar(20),sex int)")# createTable(mysqlDb)# 执行insert语句
def insert(mysqlDb):cursor = mysqlDb.cursor()try:cursor.execute("INSERT INTO tb_user(name,sex) values('sofwin2',0)")print('insert成功')except:print('插入异常')finally:mysqlDb.commit()# insert(mysqlDb)# 查询语句def query(mysqlDb):cursor = mysqlDb.cursor()cursor.execute("select * from tb_user")users = cursor.fetchall()for user in users:print(user[0])print(user[1])print(user[2])query(mysqlDb)# 将查询语结果封装到list中,每个标位为dictdef queryAll(mysqlDb):cursor = mysqlDb.cursor()cursor.execute("select * from tb_user")users = cursor.fetchall()userList=[]for user in users:u = {}u['id'] = user[0]u['name'] = user[1]u['sex'] = user[2]userList.append(u)print(userList)queryAll(mysqlDb)# 定义user对象class User:id = 0name = ''sex = 0def __init__(self,id, name, sex):self.id = idself.name = nameself.sex = sexdef __str__(self):print('用户id:'+ str(self.id)+',name:'+self.name+',sex:'+ str(self.sex))# list中封装User对象
def queryAll2(mysqlDb):cursor = mysqlDb.cursor()cursor.execute("select * from tb_user")users = cursor.fetchall()userList=[]for x in users:u  = User(x[0],x[1],x[2])userList.append(u)print(userList.__str__())queryAll2(mysqlDb)# 修改def update(mysqlDb):cursor = mysqlDb.cursor()try:cursor.execute("update tb_user set name='helloWorld' where id = 2")finally:mysqlDb.commit()update(mysqlDb)# delete语句
def delete(mysqlDb):cursor = mysqlDb.cursor()try:cursor.execute("delete from tb_user where id = 3")finally:mysqlDb.commit()delete(mysqlDb)queryAll(mysqlDb)

pyMysql

PyMySQL 是在 Python3.x 版本中用于连接 MySQL 服务器的一个库,Python2 中则使用 mysqldb。

PyMySQL 遵循 Python 数据库 API v2.0 规范,并包含了 pure-Python MySQL 客户端库。

使用 PyMySQL 之前,我们需要确保 PyMySQL 已安装。

PyMySQL 下载地址:https://github.com/PyMySQL/PyMySQL。

如果还未安装,我们可以使用以下命令安装最新版的 PyMySQL:

$ pip install PyMySQL# pyMysqlimport pymysqldb = pymysql.connect(host='localhost',user='root',password='Lh_198571',database='db_python'
)# 查询
def query():# 创建游标对象cursor = db.cursor()# 执行查询方法cursor.execute("select * from tb_user")# 获取到元组result = cursor.fetchall()print(type(result))print(result)# 插入 第一个参数不能为默认参数
def insert(name, sex, mdb=db):cursor = mdb.cursor()try:print("insert into tb_user(name,sex) values('" + name + "'," + str(sex) + ")")cursor.execute("insert into tb_user(name,sex) values('" + name + "'," + str(sex) + ")")finally:mdb.commit()insert('a1', 10)# 删除def delete(id, mdb=db):cursor = mdb.cursor()try:cursor.execute("delete from tb_user where id = 5")finally:mdb.commit()delete(5)# 修改
def update(id, mdb=db):cursor = mdb.cursor()try:cursor.execute("update tb_user set name ='aaaaa' where id=" + str(id))finally:mdb.commit()# 根据id 查询一调数据
def getOne(id, mdb = db):cursor = mdb.cursor()cursor.execute("select * from tb_user where id=" + str(id))result = cursor.fetchone()# tuple 元组print(type(result))print(result)getOne(4)update(6)
query()

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com