pymysql 버전 0.9.3,django2.X 필요 >=1.3.13 버전
2544 단어 django
django 버전: 2.2.1
python 버전: 3.6.6
django 프로젝트를 구축하고 mysql 데이터베이스를 설정할 때 데이터베이스를 이전할 수 없는 문제에 부딪혔습니다. 오류 정보는 다음과 같습니다.
django.core.exceptions.ImproperlyConfigured: mysqlclient 1.3.13 or newer is required; you have 0.9.3.
문제 분석 프로세스
오류 정보에서 알 수 있듯이 mysqlclient라는 패키지 버전이 일치하지 않아 발생한 문제입니다.
검색엔진 검색 관련 오류,python이 mysql에 접근하려면 대응하는 드라이버를 설치해야 하며, mysql의 API 인터페이스를python 형식으로 변환하여 데이터베이스 응용 소프트웨어 개발자가 직접 호출할 수 있는 제3자 라이브러리로 전환해야 한다.django2.2 기본적으로'mysqlclient'라는 라이브러리를 사용하여 mysql를 연결하는데 인터넷의 많은 강좌에서'pymysql'을 사용합니다.이 두 라이브러리는 어떤 차이가 있습니까?검색을 계속합니다.
pymysql, mysqlclient와 mysqldb
pypi에서pymsql에 대한 설명: 순수한 Python MySQL 드라이버 - MySQL의 Python 인터페이스입니다.PyMySQL 최신 버전 0.9.3, 공식 문서에 따르면 "This package contains a pure-Python MySQL client library"– 순수한python 언어로 개발된 mysql 드라이브 라이브러리로 대부분의 API는 mysqlclient와 MySQLdb를 호환하고,python2는 2.7버전만 지원하며,python3버전은 3.4 및 이전 버전을 지원하며, mysql버전은 5.5버전 및 이상을 요구한다.
pypi에서 mysqlclient에 대한 설명: MySQL 드라이버 - MySQL의 Python 인터페이스.최신 버전 1.4.x,python3 지원.django 문서에 "mysqlclient is a native driver. It's the recommended choice"– mysqlclient는 기본 드라이버입니다.추천하는 선택입니다.
pypi에서 mysqldb에 대한 설명: MySQL 드라이버 - MySQL의 Python 인터페이스.최신 버전 MySQL-python 1.2.x.현재 MySQL -3.23에서 5.5, Python-2.4에서 2.7을 지원합니다.Python-3.0은 향후 릴리즈에서 지원됩니다.PyPy 지원.
종합: 1, 셋 다python과 mysql의 상호작용 인터페이스로 사용할 수 있다.2,django 문서에 "Django는 mysqlclient 1.3.13 이상의 버전이 필요합니다."즉django2.2.x는 0.9.3 버전을 지원하지 않습니다.3, 우리는pymysql를 이렇게 가져왔습니다.
import pymysql
pymysql.install_as_MySQLdb()
install_as_MySQLdb () 방법은 "이 함수를 호출하면 MySQLdb나 mysql를 가져오면 자신도 모르게 실제pymysql를 사용합니다."라고 설명합니다.그pymysql버전은 0.9.3이므로 버전을 검사할 때 통과할 수 없습니다.
해결 방법:
1,pymysql이 아닌 mysqlclient를 사용하고 pip를 설치하면 됩니다. 가져오는 방법은 다음과 같습니다.
import MySQLdb
2,django 버전을 1로 낮추기x.x
3, mysqlclient 사용
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
Django의 질문 및 답변 웹사이트환영 친구, 이것은 우리의 새로운 블로그입니다. 이 블로그에서는 , 과 같은 Question-n-Answer 웹사이트를 만들고 있습니다. 이 웹사이트는 회원가입 및 로그인이 가능합니다. 로그인 후 사용자는 사용자의 ...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.