python_操作linux上的mysql
在编写初期,遇见一个问题,发现怎么连接不上mysql,一直报错1045;
最后发现,只要下面的,连接写正确,不会出现这个问题, 只要你保证你的user、pwd是正确的,
import pymysqldb_config = {'user': 'root','password': 'qwe123','db': 'test','charset':'utf8'}# 连接mysql数据库con = pymysql.connect(**db_config)# 创建游标 , 利用游标来执行sql语句cur = con.cursor()
基本连接是没有问题的。
那我在重复下基本操作命令:
1、建立连接:pymysql.connect(**dbconfig)连接是不能操作数据库的,需要用连接生成游标来操作 2、创建游标: connection.cursor() 3、执行SQL语句:cursor.execute(sql) 4、获取结果:cur.fetchall() 5、事务的回滚: rollback() 6、事务的提交: commit()
这时,咱们在xshell_mysql 新建一些数据
新建表数据:
CREATE TABLE data_test(id INT unique,name VARCHAR(50),age INT,sex enum('男','女') );
表内插入数据:
insert into data_test(id, name, age, sex) VALUES(1, '李牧', 18, '男'),(2, '栗子', 20, '女'),(3, '测试', 26, '男'),(4, '尕娃', 30, '女');
那么在xshell中查询结果如下:
那么我们在pycharm 怎么连接并查询数据呢?
1 import pymysql 2 3 def tes_mysql(): 4 db_config = { 5 'user': 'root', 6 'password': 'qwe123', 7 'db': 'test', 8 'charset':'utf8' 9 } 10 # 连接mysql数据库 11 con = pymysql.connect(**db_config) 12 # 创建游标 , 利用游标来执行sql语句 13 cur = con.cursor() 14 15 try: 16 # 执行sql语句,不会返回结果,返回其影响的行数 17 executes = cur.execute("select * from data_test") 18 # 获取结果 19 values = cur.fetchall() 20 for value in values: 21 print(value) 22 23 # 提交到数据库,真正把数据插入或者更新到数据 24 con.commit() 25 except Exception as e: 26 print(e) 27 # 发生了异常,回滚 28 con.rollback() 29 30 finally: 31 # 在最后使用完关闭游标和连接 32 # 关闭游标 33 cur.close() 34 # 关闭连接 35 con.close()
再进行个参数化把,
定义 test_base.py
1 import pymysql 2 3 def tes_mysql(sql): 4 db_config = { 5 'user': 'root', 6 'password': 'qwe123', 7 'db': 'test', 8 'charset':'utf8' 9 } 10 # 连接mysql数据库 11 con = pymysql.connect(**db_config) 12 # 创建游标 , 利用游标来执行sql语句 13 cur = con.cursor() 14 15 try: 16 # 执行sql语句,不会返回结果,返回其影响的行数 17 executes = cur.execute(sql) 18 # 获取结果 19 values = cur.fetchall() 20 for value in values: 21 print(value) 22 23 # 提交到数据库,真正把数据插入或者更新到数据 24 con.commit() 25 except Exception as e: 26 print(e) 27 # 发生了异常,回滚 28 con.rollback() 29 30 finally: 31 # 在最后使用完关闭游标和连接 32 # 关闭游标 33 cur.close() 34 # 关闭连接 35 con.close()
run_select.py
1 from day.test_base import tes_mysql 2 3 sql = "select * from data_test" 4 # 实例化 5 a = tes_mysql(sql)
运行结果:
简单记录一下。
作者:含笑半步颠√
博客链接:https://www.cnblogs.com/lixy-88428977
声明:本文为博主学习感悟总结,水平有限,如果不当,欢迎指正。如果您认为还不错,欢迎转载。转载与引用请注明作者及出处。
转载于:https://www.cnblogs.com/lixy-88428977/p/9581265.html
python_操作linux上的mysql相关推荐
- shell 登录mysql 然后quit_使用工具Xshell实现在linux上登录mysql和退出mysql的相关操作讲解...
这两天想着把自己买的服务器和域名使用起来搭建一个个人博客,使用Xshell工具在Linux系统下操作以及一些命令使用上的一些随笔小记吧. 首先在Linux上的mysql的登录和退出 1.查看自己的my ...
- 在Linux上安装Mysql 以及 涉及问题
在Linux上安装Mysql 一:准备工作 1.检查当前系统是否安装过Mysql (1)CentOS6 的环境下 命令:rpm -qa|grep mysql 默认在Linux在安装的时候,自带了mys ...
- Linux上安装Mysql
Linux上安装Mysql Linux上安装Mysql Linux上安装软件常见的几种方式: 使用yum进行安装 修改密码及登录 设置编码 设置开机启动 关闭防火墙 删除mysql 使用tar.xz安 ...
- linux mysql帮助文档,在 Linux 上安装 MySQL
## 2.5 在 Linux 上安装 MySQL Linux 支持多种不同的 Linux 安装解决方案. We recommend that you use one of the distributi ...
- 在Linux上安装MySql
在Linux上安装Mysql的基本步骤是: 1.安装wget sudo yum -y install wget 2.使用wget下载rpm包 sud ...
- Navicat链接linux上的mysql出现 1577 Cannot proceed because system tables used by Event Scheduler where foun
之前用navicat链接远程linux上的mysql一直都挺好使的,今天导出数据的时候发现,出现了下图错误. 百度一下解决方法是: (1)windows上的mysql出现1577,方法一百度一大堆,下 ...
- red hat linux mysql,Red Hat Linux上的Mysql与JDBC的连接问题
我正在实现一个需要连接到MYSQL数据库的类....在Windows系统上,我遇到了一些连接问题,这些连接问题是通过更改"绑定地址"将MYSQL配置文件中的参数设置为localho ...
- linux上安装mysql,tomcat,jdk
Linux 上安装 1 安装jdk 检测是否安装了jdk 运行 java –version 若有 需要将其卸载 a) 查看安装哪些jdk rmp –qa |grep java b) ...
- c++ 通过 myodbc连接到 远程linux 上的mysql server
http://wenku.baidu.com/link?url=-sYO5XFbaG53Ldz-84B6-7OJ7QezriEu_lcphuH96ZV96HkdE-vuhmxsi9JKvdKLj_wy ...
最新文章
- Android--应用开发3(Android layout XML属性)
- saltstack中salt-key收集的主机名与实际主机名不一致
- Eureka Client注册到Eureka Server的秘密
- C++ opengl GL_LINE_STRIP的绘制
- Hadoop框架:HDFS读写机制与API详解
- vue中接受后台传过来的图片文件流blob前端进行展示实现方法
- python如何实时查询oracle_python针对Oracle常见查询操作实例分析
- Redis Manager 如何查看监控
- 当IDENTITY_INSERT设置为OFF时不能向表插入显示值。(源:MSSQLServer,错误码:544)
- pdf复制json不全的问题
- MDUI的黑暗模式实现和居中问题
- 黑域助手连接服务器才能用吗,黑域app怎么使用?进入黑域详细教程[图]
- PSV卡套 换卡工具 下载及使用
- 苹果手机sim卡无效怎么办_苹果手机存储空间不足怎么办
- 程序员非常实用的十个工具网站,值得收藏
- arcgis 10.8 for win10安装教程
- 学C语言,C++是自学好还是去培训机构?
- HTML基础知识整理
- [sdx12]sdx12平台QCA6174 使用hostapd WiFi 2.4G强制40MHz频宽不生效问题分析及实现
- group by 用法