####问题#### 关于mysql很少讲,我是用的是mysql5.7版本,使用数据库管理工具navicat for mysql,python使用python3.7版本,在使用python链接mysql时出现警告Warning: (1366, "Incorrect string value: '\xD6\xD0\如图: 个人链接代码是
engine = create_engine("mysql+pymysql://root:password@127.0.0.1:3306/mydata?charset=utf8")#操做数据库
####如下是解决方法:#### 在使用python链接mysql时须要先安装mysql-python模块,而后安装mysql-connector-python驱动(在anaconda中的安装命令是conda install mysql-connector-python),也能够在pycharm中引用import mysql选择mysql-connector-python自动安装(若安装不成功仍是使用命令安装),以后修改链接代码为: engine= create_engine('mysql+mysqlconnector://root:password@127.0.0.1:3306/mydata?charset=utf8')
就不会出现警告了,下面贴上测试代码:python
from sqlalchemy import create_engine, Integer, String from sqlalchemy.orm import sessionmaker from sqlalchemy.ext.declarative import declarative_base from sqlalchemy import Column #建立数据库 engine= create_engine('mysql+mysqlconnector://root:password@127.0.0.1:3306/mydata?charset=utf8') Session= sessionmaker(bind=engine) #声明一个基类 Base = declarative_base() class Ltabel(Base): #表名 __tablename__ = 'rp' #id id=Column(Integer,primary_key=True,autoincrement=True) #岗位id positionId=Column(Integer,nullable=False) #岗位名称 positionName=Column(String(length=20),nullable=False) #list compylist=Column(String(length=20),nullable=True) if __name__ == "__main__": #建立数据表 Ltabel.metadata.create_all(engine)