一:至关重要的成分:记住一定要加上conn.commit()这句代码,只有加入这句代码数据插入操作才会真正执行
# -*- coding: utf-8 -*-
#第17章Scrapy高级应用
#17.1 Python3如何操作数据库
import pymysql
conn=pymysql.connect(host="127.0.0.1", user="root", passwd="*******", db="mypydb")
cs=conn.cursor()
a='生命'
b='安全'
sql="insert into mytb(title,keywd) VALUES('"+a+"','"+b+"')"
cs.execute(sql)
# 提交SQL
conn.commit()#至关重要
cs.execute("select * from mytb")
result=cs.fetchone()
print(result)
print("-----------华丽分割线------------")
# 执行数据查询
cs.execute("select * from mytb")
#查询数据库多条数据
result = cs.fetchall()
for data in result:
print(data)
# 关闭数据连接
conn.close()
二:其他格式的统一,保证中文的成功存入:
1、C:\Users\leishen\Anaconda3\envs\anaconda36easy\Lib\site-packages\pymysql 中的connections.py修改charset='utf8',将连接编码设置为utf8;
def __init__(self, host=None, user=None, password="",
database=None, port=0, unix_socket=None,
charset='utf8', sql_mode=None, read_default_file=None, conv=None, use_unicode=None
2、C:\ProgramData\MySQL\MySQL Server 5.7 中的my.ini文件,修改default-character-set=utf8 character-set-server=utf8,设置服务器默认编码格式为utf8;
这里设置以后,再新建数据库,数据表格,列的格式都默认为utf8了。