Python MySQLdb 插入数据
其实python链接MySQL的方法很多,比较常用的是MySQLdb这个模块,由于自己准备往数据库里面插入一条日期数据,在格式化的日期数据的时候一直报错,所以这里简单写了一个往MySQL数据库的插入数据的demo。
# -*- coding: utf-8 -*-
# @Time : 2018/1/22 21:39
# @Author : Hunk
# @Email : qiang.liu@ikooo.cn
# @File : ex125.py
# @Software: PyCharm import MySQLdb
from datetime import datetime # 打开数据库连接
db = MySQLdb.connect("127.0.0.1", "root", "root", "cars", charset='utf8') # 使用cursor()方法获取操作游标
cursor = db.cursor() # 使用execute方法执行SQL语句
date = datetime.now().strftime("%Y-%m-%d")
sql = """insert into series values(%d,%s,str_to_date(%s,'%%Y-%%m-%%d'))"""
param = (1, "哈弗H6", date)
cursor.execute(sql, param)
# 提交到数据库执行
db.commit() # 关闭数据库连接
cursor.close()
db.close()
其实最初操作的时候一个简单的数据插入的动作还遇到了几个常见的问题,所以在这里总结下
问题1:插入数据的时候采用%d 来格式化sql语句;
报错:TypeError: %d format: a number is required, not str"
解决方案:
The format string is not really a normal Python format string. Youmust always use %s for all fields. 也就是MySQLdb的字符串格式化不是标准的python的字符串格式化,
问题2:链接数据库的时候没有指定数据库的字符集插入中文数据后发现显示乱码;
解决办法:
链接的时候直接指定字符集或者链接完成后设置自己的字符集;
db = MySQLdb.connect("127.0.0.1", "root", "root", "cars", charset='utf8')
Python MySQLdb 插入数据的更多相关文章
- python批量插入数据到es和读取es数据
一.插入数据 1.首先准备类似如下数据 {"_type": "type1", "_id": 1, "_index": & ...
- 用python批量插入数据到数据库中
既然使用python操作数据库必不可少的得使用pymysql模块 可使用两种方式进行下载安装: 1.使用pip方式下载安装 pip install pymysql 2.IDE方式 安装完成后就可以正常 ...
- python mysql插入数据遇到的错误
1.数据插入的时候报错:not enough arguments for format string,大概意思就是说没有足够的参数格式化字符串. 我的数据库插入方法是这样的 def add_data( ...
- python数据库操作常用功能使用详解(创建表/插入数据/获取数据)
实例1.取得MYSQL版本 复制代码 代码如下: # -*- coding: UTF-8 -*-#安装MYSQL DB for pythonimport MySQLdb as mdbcon = Non ...
- 用python随机生成数据,再插入到postgresql中
用python随机生成学生姓名,三科成绩和班级数据,再插入到postgresql中. 模块用psycopg2 random import random import psycopg2 fname=[' ...
- python,java操作mysql数据库,数据引擎设置为myisam时能够插入数据,转为innodb时无法插入数据
今天想给数据库换一个数据引擎,mysiam转为 innodb 结果 python 插入数据时失败,但是自增id值是存在的, 换回mysiam后,又可以插入了~~ 想换php插入试试,结果php数据引擎 ...
- Python数据库(二)-Mysql数据库插入数据
通过python连接mysql数据库,并插入数据 # -*- coding:utf-8 -*- __author__ = "MuT6 Sch01aR" import pymysql ...
- 数据测试001:利用python连接数据库插入excel数据
数据测试001:利用python连接数据库插入excel数据 最近在做数据测试,主要是做报表系统,需要往数据库插入数据验证服务逻辑,本次介绍如何利用python脚本插入Oracle和Mysql库中: ...
- Python向mysql数据库插入数据
一.向表tcolor中插入数据的主要流程如下: import datetimeimport pymysql.cursorsconnection = pymysql.connect(host='loca ...
随机推荐
- django做redis缓存
django中应用redis:pip3 install django-redis - 配置 CACHES = { "default": { "BACKEND": ...
- python day09--定义函数
一.函数的定义 def 函数名(参数): 函数体 来我们来定义⼀一个约x功能: def yue(): print("拿出⼿手机") print("打开陌陌") ...
- C++ API方式连接mysql数据库实现增删改查
这里复制的 http://www.bitscn.com/pdb/mysql/201407/226252.html 一.环境配置 1,装好mysql,新建一个C++控制台工程(从最简单的弄起,这个会了, ...
- Non-technical Blog Recording on Day of Sep. 19th 2017 in Retrospection.
Unfortunately, I heard a resignation message verbally from ESU (her name is: Su Yi in Chinese, Su fr ...
- FZU 1759-Super A^B mod C
传送门:http://acm.fzu.edu.cn/problem.php?pid=1759 Accept: 1161 Submit: 3892Time Limit: 1000 mSec ...
- pytorch实现style transfer
说是实现,其实并不是我自己实现的 亮出代码:https://github.com/yunjey/pytorch-tutorial/tree/master/tutorials/03-advanced/n ...
- JavaBasic_09
方法的参数传递 方法调用时参数值的传递可以分为"值传递"和"引用传递"两种 值传递 - a.当方法的参数为基本数据类型时 b.实参的值被复制给形参,改变形参不会 ...
- HDU 1069:Monkey and Banana(DP)
Monkey and Banana Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others ...
- HashSet remove()
HashSet继承自Set接口的方法:boolean remove(Object o); case1: public class ShortTest { public static void main ...
- while与do/while循环
while循环1.格式:初始化条件while(循环条件){循环体迭代条件}题目:100以内偶数的输出及其和(while语句) public class V{ public static void ma ...
