質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.35%
Discord

Discordは、ゲーマー向けのボイスチャットアプリです。チャット・通話がブラウザ上で利用可能で、個人専用サーバーも開設できます。通話中でも音楽を流したり、PC画面を共有できるなど多機能な点が特徴です。

SQLite

SQLiteはリレーショナルデータベース管理システムの1つで、サーバーではなくライブラリとして使用されている。

Python

Pythonは、コードの読みやすさが特徴的なプログラミング言語の1つです。 強い型付け、動的型付けに対応しており、後方互換性がないバージョン2系とバージョン3系が使用されています。 商用製品の開発にも無料で使用でき、OSだけでなく仮想環境にも対応。Unicodeによる文字列操作をサポートしているため、日本語処理も標準で可能です。

Q&A

0回答

837閲覧

Discord.pyを用いたBotでSQLクエリを投げたい

PythonBeg1nner

総合スコア18

Discord

Discordは、ゲーマー向けのボイスチャットアプリです。チャット・通話がブラウザ上で利用可能で、個人専用サーバーも開設できます。通話中でも音楽を流したり、PC画面を共有できるなど多機能な点が特徴です。

SQLite

SQLiteはリレーショナルデータベース管理システムの1つで、サーバーではなくライブラリとして使用されている。

Python

Pythonは、コードの読みやすさが特徴的なプログラミング言語の1つです。 強い型付け、動的型付けに対応しており、後方互換性がないバージョン2系とバージョン3系が使用されています。 商用製品の開発にも無料で使用でき、OSだけでなく仮想環境にも対応。Unicodeによる文字列操作をサポートしているため、日本語処理も標準で可能です。

0グッド

0クリップ

投稿2020/12/30 13:55

前提・実現したいこと

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

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

まだ回答がついていません

会員登録して回答してみよう

アカウントをお持ちの方は

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.35%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問