pymysql

使用python操作mysql数据库

折月煮酒 提交于 2019-11-30 15:02:10
一、pymysql的使用 1.首先在python中安装pymysql模块(CMD窗口命令下)。 pip install pymsql 安装完成后导入 import pymysql 2.pyysql 连接数据库的必要参数: 主机、端口、用户名。密码、数据库 注意:pymysql不能提供创建数据库的服务,数据库要提前创建 3.连接步骤: ​ -1. 建立数据库连接对象 conn ​ -2. 通过conn创建操作mysql的 cursor(游标对象) ​ -3. 编写sql语句交给 cursor 执行 ​ -4. 如果是查询,也要通过cursor对象,获取结果 ​ -5. 操作完毕,端口操作与连接 -1. 建立数据库连接对象 conn conn = pymysql.connect(user='用户名',passwd='密码',database='数据库名') # 例 conn = pymysql.connect(user='root', passwd='root', database='oldboy') -2. 通过conn创建操作mysql的 cursor(游标对象) 注:游标不设置参数,查询的结果就是数据元组,数据没有标识性 设置pymysql.cursor.DictCursor,查询的结果是字典,key是表的字段 cursor = conn.cursor(pymysql

[问题解决] flask1.1.1 上的一些问题

£可爱£侵袭症+ 提交于 2019-11-30 14:27:04
1. sqlalchemy.exc.InternalError: (pymysql.err.InternalError) 错误: sqlalchemy.exc.InternalError: (pymysql.err.InternalError)(1193, "Unknown system variable 'tx_isolation'") 解决: pip install -i https://pypi.tuna.tsinghua.edu.cn/simple --upgrade sqlalchemy --ignore-installed 原因: 以前版本的mysql使用的是tx_isolation,现在版本的mysql8.0 被替换成了transaction_isolation 来源: https://my.oschina.net/gain/blog/3111784

python 数据库处理 合并数据库

偶尔善良 提交于 2019-11-30 14:26:15
创建 config.ini `#需要合并的服务器 最大2 db_app_count = 1 需要合并资源1 db_host1 = 127.0.0.1 db_user1 = root db_pass1 = root 需要合并资源2 db_host2 = 127.0.0.1 db_user2 = root db_pass2 = root 目的地 db_host = 127.0.0.1 db_user = root db_pass = root #需要合并的表 db_list = [] #新服serverId server_id = 8 新服数据库目的地 db_host1 = 127.0.0.1 db_user1 = root db_pass1 =root #用户登录数据login db_host2 = 127.0.0.1 db_user2 = root db_pass2 = root 资源 db_host = 127.0.0.1 db_user = root db_pass = root #需要导入资源 db_list = [] ` 没怎么写过,网上查了下语法,可能不规范,大致就是这个样子的 linux一般默认版本为2. 需要更新python版本到3. 需要安装pip3 命令 需要 pip3安装records pymysql 两个库 数据库信息,表信息,通过配置文件config配置完成

数据库

痞子三分冷 提交于 2019-11-30 13:35:33
目录 联合分组 子查询 all与any 视图:view 视图的增删改 事务 pymysql:python操作mysql 安装 增删改查 创建表 增 删 改 查 游标操作 pymysql事务 sql注入 索引 联合分组 # 数据来源:在单表emp下 # 联合分组:按多个字段综合结果进行分组 # 按 area与port 组合后的结果进行分组,只有组合后的结果还一致,才认为是一组 select group_concat(name),area,port from emp group by area,port; 子查询 # 增:insert into 表 select子查询 # 删:delete from 表 条件是select子查询(表不能与delete表相同) # 改:select 字段 from 表 条件是select子查询 # 查:update 表 set 条件是select子查询(表不能与delete表相同) # 数据来源:在单表emp下 # 子查询:将一条查询saql的结果作为另一条sql的条件 # 思考:每个部门最高薪资的那个人所有信息 # 子查询的sql select dep,max(salary) from emp group by dep; # 子查询 - 查 select * from emp where(dep,salary) in (select dep,max

pymysql:python操作mysql

泄露秘密 提交于 2019-11-30 13:35:24
pymysql:python操作mysql 安装 >: pip3 install pymysql 增删改查 # 选取操作的模块 pymysql # pymysql连接数据库的必要参数:主机、端口、用户名、密码、数据库 # 注:pymysql不能提供创建数据库的服务,数据库要提前创建 import pymysql # 1)建立数据库连接对象 conn # 2)通过 conn 创建操作sql的 游标对象 # 3)编写sql交给 cursor 执行 # 4)如果是查询,通过 cursor对象 获取结果 # 5)操作完毕,端口操作与连接 # 1)建立数据库连接对象 conn conn = pymysql.connect(user='root', passwd='root', database='oldboy') # conn = pymysql.connect(user='root', passwd='root', database='oldboy', autocommit=True) # 2)通过 conn 创建操作sql的 游标对象 # 注:游标不设置参数,查询的结果就是数据元组,数据没有标识性 # 设置pymysql.cursors.DictCursor,查询的结果是字典,key是表的字段 cursor = conn.cursor(pymysql.cursors.DictCursor

Mysql基础知识

笑着哭i 提交于 2019-11-30 13:33:59
Mysql学习 """ 1、字段修改 alter modify alter change alter add ''|first|after alter drop 2、表关系: 一对一:外键存在两边都可以 一对多:外键存在多的一方 多对多:外键必须存在第三张关系表 外键:外键是表的一个字段,值可以重复也可以唯一,值是被关联表被关联字段的值,被关联字段必须有唯一键 foreign key(外键字段) references 被关联表(被关联字段) create table book( id int not null primary key auto_increment, name varchar(64) unique ); create table author( id int not null primary key auto_increment, name varchar(64) unique ); create table book_author( id int not null primary key auto_increment, book_name varchar(64), author_name varchar(64), foreign key(book_name) references book(name) on update cascade on delete

用python操作数据库

廉价感情. 提交于 2019-11-30 12:32:09
数据库的安装和连接 PyMySQL的安装 pip install PyMySQL python连接数据库 import pymysql db = pymysql.connect("数据库ip","用户","密码","数据库" ) # 打开数据库连接 cursor.execute("SELECT VERSION()") # 使用 execute() 方法执行 SQL 查询 data = cursor.fetchone() # 使用 fetchone() 方法获取单条数据 print ("Database version : %s " % data) db.close() # 关闭数据库连接 import pymysql conn = pymysql.connect( host='localhost', user='root', password="root", database='db', port=3306, charset='utf-8', ) cur = conn.cursor(cursor=pymysql.cursors.DictCursor) 创建表操作 import pymysql # 打开数据库连接 db = pymysql.connect("localhost","testuser","test123","TESTDB" ) # 使用 cursor()

PyMySQL and OrderedDict

泪湿孤枕 提交于 2019-11-30 02:50:56
问题 I've been using PyMySQL for a while now and created my own wrapper that I'm used to to shorthand writing queries. Nonetheless I've been creating CSV files with OrderedDict because I need to keep the order the same but I realize that if I use PyMySQL for querying the database, I will not get the order the database is giving back. This is a little annoying for spot checking CSV files if I wanted to just dump stuff rather than hand write the orders. My question is, how do I use PyMySQL with

Django学习之路

こ雲淡風輕ζ 提交于 2019-11-29 19:09:33
Django学习之路 基础web框架的实现 1.纯手撸web框架。   1、手动书写socket代码   2、手动处理http数据 #socket套接字 import socket server = socket.socket() server.bind(('127.0.0.1',8080)) server.listen(5) while True: conn, addr = server.accept() data = conn.recv(1024) conn.send(b'HTTP/1.1 200 OK\r\n\r\n') # print(data) data = data.decode('utf-8') current_path = data.split('\r\n')[0].split(' ')[1] # print(current_path) if current_path == '/index': # conn.send(b'index') with open(r'D:\python脱产10期视频\day51\01 纯手撸html文件.html','rb') as f: conn.send(f.read()) elif current_path == '/login': conn.send(b'login') else: conn.send(b'hello world!

Python可视化工具plotly从数据库读取数据作图示例

匆匆过客 提交于 2019-11-29 19:07:18
本人在学习使用Python数据可视化工具plotly的过程中,实际的需求是将数据库中的数据展示出来,经过尝试终于完成了第一步,把数据库某列数据取出来,然后再在本地生成html文件。下面分享一下代码,供大家参考。 #!/usr/bin/python # coding=utf-8 import pymysql import plotly.plotly from plotly.graph_objs import * import plotly.graph_objs as abc # 必须 host = "192.168.10.111" user = "*****" passwd = "*****" db = "api_test" port = 3306 charset = "utf8" # 新建链接 conn = pymysql.connect( host=host, port=port, user=user, passwd=passwd, db=db, charset=charset, ) # 获取链接 cur = conn.cursor() # 执行sql re = cur.execute("SELECT * FROM api_result WHERE api_name = \"/article/list/userfeed\"") # 返回结果 dfs = cur.fetchall(