Djangoのquerysetにて、MySQLからレコードを取得できない
解決したいこと
djangoベースのサイトにおいて、querysetでレコードを取得したいが、「django.db.utils.OperationalError: (2059, )」
というエラーにより、取得できない。
発生している問題・エラー
django.db.utils.OperationalError: (2059, <NULL>)
該当するソースコード
models.py
from django.db import models
class News(models.Model):
title = models.CharField(verbose_name="タイトル", max_length=40)
context = models.TextField(verbose_name="本文", blank=True, null=True)
photo = models.ImageField(verbose_name="画像", blank=True, null=True)
class Meta:
verbose_name_plural = 'お知らせ機能'
def __str__(self):
return self.title
自分で試したこと
Djnango管理サイトにて、models.pyで定義した「title」「context」「photo」を登録し、MySQLのCommand LIne Clientにて、それぞれのレコードがアップロードされていることを確認しました。
その後、Pycharmにて、python manage.py shellを実行し、
from app.models import News
News = News.objects.all()
を実行しましたが、以下のエラーが発生しました。
The above exception was the direct cause of the following exception:
Traceback (most recent call last):
File "<console>", line 1, in <module>
File "C:\Users\user\AppData\Roaming\Python\Python39\site-packages\django\db\models\query.py", line 263, in __repr__
data = list(self[:REPR_OUTPUT_SIZE + 1])
File "C:\Users\user\AppData\Roaming\Python\Python39\site-packages\django\db\models\query.py", line 269, in __len__
self._fetch_all()
File "C:\Users\user\AppData\Roaming\Python\Python39\site-packages\django\db\models\query.py", line 1308, in _fetch_all
self._result_cache = list(self._iterable_class(self))
File "C:\Users\user\AppData\Roaming\Python\Python39\site-packages\django\db\models\query.py", line 53, in __iter__
results = compiler.execute_sql(chunked_fetch=self.chunked_fetch, chunk_size=self.chunk_size)
File "C:\Users\user\AppData\Roaming\Python\Python39\site-packages\django\db\models\sql\compiler.py", line 1154, in execute_sql
cursor = self.connection.cursor()
File "C:\Users\user\AppData\Roaming\Python\Python39\site-packages\django\utils\asyncio.py", line 26, in inner
return func(*args, **kwargs)
File "C:\Users\user\AppData\Roaming\Python\Python39\site-packages\django\db\backends\base\base.py", line 259, in cursor
return self._cursor()
File "C:\Users\user\AppData\Roaming\Python\Python39\site-packages\django\db\backends\base\base.py", line 235, in _cursor
self.ensure_connection()
File "C:\Users\user\AppData\Roaming\Python\Python39\site-packages\django\utils\asyncio.py", line 26, in inner
return func(*args, **kwargs)
File "C:\Users\user\AppData\Roaming\Python\Python39\site-packages\django\db\backends\base\base.py", line 219, in ensure_connection
self.connect()
File "C:\Users\user\AppData\Roaming\Python\Python39\site-packages\django\db\utils.py", line 90, in __exit__
raise dj_exc_value.with_traceback(traceback) from exc_value
File "C:\Users\user\AppData\Roaming\Python\Python39\site-packages\django\db\backends\base\base.py", line 219, in ensure_connection
self.connect()
File "C:\Users\user\AppData\Roaming\Python\Python39\site-packages\django\utils\asyncio.py", line 26, in inner
return func(*args, **kwargs)
File "C:\Users\user\AppData\Roaming\Python\Python39\site-packages\django\db\backends\base\base.py", line 200, in connect
self.connection = self.get_new_connection(conn_params)
File "C:\Users\user\AppData\Roaming\Python\Python39\site-packages\django\utils\asyncio.py", line 26, in inner
return func(*args, **kwargs)
File "C:\Users\user\AppData\Roaming\Python\Python39\site-packages\django\db\backends\mysql\base.py", line 234, in get_new_connection
return Database.connect(**conn_params)
File "C:\Users\user\AppData\Roaming\Python\Python39\site-packages\MySQLdb\__init__.py", line 84, in Connect
return Connection(*args, **kwargs)
File "C:\Users\user\AppData\Roaming\Python\Python39\site-packages\MySQLdb\connections.py", line 179, in __init__
super(Connection, self).__init__(*args, **kwargs2)
django.db.utils.OperationalError: (2059, <NULL>)
settings.pyにて、データベースのログイン情報をPyCharmの環境変数から取得していたところ、内容を直接記述してから再試行しましたが、同様のエラーが発生します。
恐らく初歩的なミスだとは思うのですが、どうにも自己解決ができませんでしたので、力をお貸し頂けると幸いです。
よろしくお願い致します。
0 likes