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 ...
随机推荐
- 一. SpringCloud简介与微服务架构
1. 微服务架构 1.1 微服务架构理解 微服务架构(Microservice Architecture)是一种架构概念,旨在通过将功能分解到各个离散的服务中以实现对解决方案的解耦.你可以将其看作是在 ...
- [CPP] STL 简介
STL 即标准模板库(Standard Template Library),是 C++ 标准库的一部分,里面包含了一些模板化的通用的数据结构和算法.STL 基于模版的实现,因此能够支持自定义的数据结构 ...
- uni-app开发经验分享二: uni-app生命周期记录
应用生命周期(仅可在App.vue中监听) 页面生命周期(在页面中添加) 当页面中需要用到下拉刷新功能时,打开pages.json,在"globalStyle"里设置"e ...
- TSP旅行商问题
求解的问题,burma.tsp里面的内容 1 16.47 96.10 2 16.47 94.44 3 20.09 92.54 4 22.39 93.37 5 25.23 97.24 6 22.00 9 ...
- Vue之创建组件之配置路由!
Vue之创建组件之配置路由!== 第一步: 当然就是在我们的试图文件夹[views]新建一个文件夹比如home 在home文件夹下面新建一个文件index.vue 第二步:在router目录下做如下事 ...
- NodeJS连接MongoDB数据库
NodeJS连接MongoDB数据库 连接数据库的js文件[我将其命名为(connect.js)] // 引入mongoose第三方模块 const mongoose = require('mongo ...
- Object level permissions support
django-guardian (1.1.1+) - Object level permissions support. Home - Django REST framework https://ww ...
- AWS Lightsail 开启 Root 登陆权限
将下面代码中的第一句中的 Passwd 改为自己将要设置的密码,否则默认 root 密码为 Passwd. #!/bin/bash echo root:Passwd |sudo chpasswd ro ...
- LOJ2125
LOJ2125 树上操作 题目描述 有一棵点数为 N 的树,以点 1 为根,且树有点权.然后有 M 个操作,分为三种: 把某个节点 x 的点权增加 aa . 把某个节点 x 为根的子树中所有点的点权都 ...
- Spring Filter过滤表单中的非法字符
使用Spring Filter过滤表单中的非法字符 1 package test.filter; 2 3 import java.io.IOException; 4 import java.util. ...