zoukankan      html  css  js  c++  java
  • python连接mysql问题(包含警告1366, "Incorrect string value:问题)

    问题####

    关于mysql不多讲,我是用的是mysql5.7版本,使用数据库管理工具navicat for mysql,python使用python3.7版本,在使用python连接mysql时出现警告Warning: (1366, "Incorrect string value: 'xD6xD0如图:

    我的连接代码是
    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')
    就不会出现警告了,下面贴上测试代码:

    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)
    
  • 相关阅读:
    第01组 Alpha冲刺(2/6)
    第01组 Alpha冲刺(1/6)
    第08组 Alpha冲刺(6/6)
    2019 SDN上机第4次作业
    第08组 Alpha冲刺(5/6)
    2019 SDN阅读作业
    2019 SDN上机第3次作业
    第08组 Alpha冲刺(4/6)
    第08组 Alpha冲刺(3/6)
    第08组 Alpha冲刺(2/6)
  • 原文地址:https://www.cnblogs.com/supershuai/p/12301320.html
Copyright © 2011-2022 走看看