前提・実現したいこと
Discord.pyを用いてBot開発をしています。
コマンドからSQLクエリを発行するコマンドを作成しSELECTしても中身が表示されず[]になってしまいそれを直しSELECTの結果を表示させたい
実行結果
発生している問題・エラーメッセージ
エラーは発生していません。
該当のソースコード
py
1#接続 2bot=MainBot(command_prefix="//") 3db=sqlite3.connect("Main.db",detect_types=sqlite3.PARSE_DECLTYPES, isolation_level=None) 4bot.db=db 5 6bot.close_=bot.close 7 8async def newclose(): 9 db.commit() 10 db.close() 11 await bot.close_() 12 13def savedb(): 14 db.commit() 15 16bot.close=newclose 17bot.savedb=savedb 18 19bot.cursor=db.cursor()
py
1@commands.command() 2@commands.is_owner() 3async def sql(self,ctx, *, code): 4 try: 5 returned=self.bot.cursor.execute(code) 6 except Exception as e: 7 if ctx.message != None: 8 await ctx.message.add_reaction("❌") 9 embed = discord.Embed(title="予期しないエラー", description=f"例外が発生しました。\n```{e}\n```",color=tools.error) 10 await ctx.send(embed=embed) 11 else: 12 embed = discord.Embed(title="予期しないエラー", description=f"例外が発生しました。\n```{e}\n```",color=tools.error) 13 await ctx.send(embed=embed) 14 15 else: 16 if ctx.message != None: 17 await ctx.message.add_reaction("⭕") 18 if code.lower().startswith("select"): 19 await ctx.send(embed=discord.Embed(description=f"{returned.fetchall()}",color=self.bot.color))
試したこと
DBBrowser for SQLiteを用いてDBの中身を見たところデータはありました。
他には特にしていません。。
補足情報(FW/ツールのバージョンなど)
実行環境:
Python 3.8.5
discord.py 1.5.0
Ubuntu20.04(GCE)
開発環境:
Python3.8.5
Windows10
あなたの回答
tips
プレビュー