mysql+python+pymysql的一些细节问题
报错
(1044, "Access denied for user 'erio'@'localhost' to database 'library'")
就是权限问题了,没什么好说的,,,换成了root //或许也可以给erio权限
SQL SERVER 有ntext类型,mysql中无,直接使用 text
插入数据时报错:
%d format: a number is required, not str
我看了一下,要插入的table 的数据类型是int,然后传送的数据类型也是int,按理来说不应该报错啊。然后去网上搜了一下https://www.douban.com/note/206462446/
,这里说只要传送的格式对了就可以,INSERT INTO 全写%S。然后修改了代码,解决了问题
另外还修改了 set NUM =%S (原来是&d)
传入以下格式的字典
book_msg{
'BID': str,
'BNAME': str,
'AUTHOR': str,
'PUBLICATION_DATE': str,
'PRESS': str,
'POSITION': str,
'SUM': int,
'CLASSIFICATION': str
} INSERT
INTO book
VALUES(%s, %s, %s, %s, %s, %s, %s, %s)
''', (
book_info['BID'],
book_info['BNAME'],
book_info['AUTHOR'],
book_info['PUBLICATION_DATE'],
book_info['PRESS'],
book_info['POSITION'],
book_info['SUM'],
book_info['SUM']
))
然后是cursor 的问题
我不知道怎么样同时拼接多条语句,比如这样会报错
You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version
cursor.execute('''
# USE Library
# CREATE TABLE student(
# SID char(15) PRIMARY KEY,
# PASSWORD char(70),
# SNAME text,
# DEPARTMENT nchar(20),
# MAJOR nchar(20),
# MAX int
# )
# CREATE TABLE administrator(
# AID char(15) PRIMARY KEY,
# PASSWORD char(70)
# )
''')
还不知道怎么解决,就只能每个事务都分开然后最后commit了。这样有些麻烦
cursor.execute('''
CREATE TABLE classification(
BID char(15),
CLASSIFICATION nchar(15),
PRIMARY KEY(BID, CLASSIFICATION)
)
''')
cursor.execute('''
INSERT
INTO administrator
VALUES('admin', '123456')
''') conn.commit()
mysql+python+pymysql的一些细节问题的更多相关文章
- mysql python pymysql模块 基本使用
我们都是通过MySQL自带的命令行客户端工具mysql来操作数据库,那如何在python程序中操作数据库呢? 这就用到了pymysql模块,该模块本质就是一个套接字客户端软件,使用前需要事先安装 pi ...
- mysql python pymysql模块 增删改查 插入数据 介绍 commit() execute() executemany() 函数
import pymysql mysql_host = '192.168.0.106' port = 3306 mysql_user = 'root' mysql_pwd = ' encoding = ...
- mysql python pymysql模块 增删改查 查询 fetchone
import pymysql mysql_host = '192.168.0.106' port = 3306 mysql_user = 'root' mysql_pwd = ' encoding = ...
- mysql python pymysql模块 增删改查 查询 字典游标显示
我们看到取得结果是一个元祖,但是不知道是哪个字段的,如果字段多的时候,就比较麻烦 ''' (1, 'mike', '123') (2, 'jack', '456') ''' 用字典显示查询的结果,也可 ...
- mysql python pymysql模块 增删改查 查询 fetchmany fetchall函数
查询的fetchmany fetchall函数 import pymysql mysql_host = '192.168.0.106' port = 3306 mysql_user = 'root' ...
- mysql python pymysql模块 获取插入的最后一条数据的自增ID lastrowid()方法
调用游标下的lastrowid 可以获取插入之前的表里id字段存放到哪个自增id cursor.lastrowid mysql> select * from userinfo; +----+-- ...
- Python中操作mysql的pymysql模块详解
Python中操作mysql的pymysql模块详解 前言 pymsql是Python中操作MySQL的模块,其使用方法和MySQLdb几乎相同.但目前pymysql支持python3.x而后者不支持 ...
- 解决python pymysql.err.OperationalError: (2013, 'Lost connection to MySQL server during query')
解决python pymysql.err.OperationalError: (2013, 'Lost connection to MySQL server during query') 学习了:ht ...
- python + pymysql连接数据库报“(2003, "Can't connect to MySQL server on 'XXX数据库地址' (timed out)")”
python + pymysql连接数据库报"(2003, "Can't connect to MySQL server on 'XXX数据库地址' (timed out)&quo ...
随机推荐
- oracle查看用户的系统权限,角色以及数据库对象权限
select * from dba_sys_privs where GRANTEE='monkey'; select * from dba_role_privs where GRANTEE='monk ...
- windows_myql 安装与卸载详细讲解,
windows_myql 安装 注意: 安装前把 所有杀毒软件,安全卫士等关闭. 打开下载的mysql安装文件双击解压缩,运行"mysql-5.5.40-win64.msi". 注 ...
- HTTPS请求HTTP接口被浏览器阻塞,python实现websocket客户端,websocket服务器,跨域问题,dwebsocket,https,拦截,服务端
HTTPS请求HTTP接口被浏览器阻塞,python实现websocket客户端,websocket服务器,跨域问题,dwebsocket,https,拦截,服务端 发表时间:2020-03-05 1 ...
- 02_Python基础
2.1 第一条编程语句 print("Hello, Python!") print("To be, or not to be, it's a question." ...
- websocket心跳重连 websocket-heartbeat-js
初探和实现websocket心跳重连(npm: websocket-heartbeat-js) 心跳重连缘由 websocket是前后端交互的长连接,前后端也都可能因为一些情况导致连接失效并且相互之间 ...
- JVM调优 jdk版本 机器配置 建议jvm参数 备注
https://juejin.im/post/5b091ee35188253892389683 大型跨境电商JVM调优经历 前提:某大型跨境电商业务发展非常快,线上机器扩容也很频繁,但是对于线上机器的 ...
- redis中的小秘密和持久化小细节
https://www.jianshu.com/p/36c301ac87df 持久化的情况 https://www.cnblogs.com/wdliu/p/9377278.html 集群搭建 主从 ...
- Shell 简单入门教程
大数据开发岗为什么要学习Shell呢?1)需要看懂大数据运维岗人员编写的Shell程序.2)偶尔会编写一些简单Shell程序来管理集群.提高开发效率 艺多不压身 Shell是一个命令行解释器,它接受应 ...
- 从零搭建TypeScript与React开发环境
前言 平时进行开发大多数是基于vue-cli或者create-react-app等官方或者公司内部搭建的脚手架. 我们业务仔做的最多就是npm i和npm run dev或者npm start,然 ...
- 20201115gryz模拟赛解题报告
写在前面 T1:期望100pts,实际0pts(7:50 ~ 8:50 T2:期望0pts,实际0pts(10:00 ~ 10:35 T3:期望20pts,实际40pts( 9:10 ~ 10:00, ...