Бот Discord не может найти результаты в базе данных Sqlite3, несмотря на то, что параметры поиска действительны - PullRequest
0 голосов
/ 16 февраля 2019

Я создаю бот Discord, который принимает ввод от пользователя с помощью команды и ищет базу данных sqlite3, которую я создал для этого ввода.

Ниже приведен код, с которым у меня возникают проблемы с

@bot.command()
async def searchip(ctx,ipadd):
   sqlite_file = 'proxys.sqlite'  
   conn = sqlite3.connect(sqlite_file)
   c = conn.cursor()
   k = c.execute("SELECT orderid FROM proxy WHERE ip_address = ?",[k])
   ds = k.fetchall()
   for g in ds:
       g = ''.join(g)
       g = g.replace(" ( ", " ")
       g = g.replace(" )"," ")
       g = g.replace(",", " ")
       g = g.strip()
       print(g)

Этот код берет ipadd из команды и подключается к созданной мной прокси-базе.Затем я пытаюсь выбрать в базе данных orderid, связанный с этим IP-адресом (поле TEXT с идентификатором заказа), и распечатать результат.Однако всякий раз, когда я пытаюсь сделать, делайте

!search fakeeee:fake:fake:fake 

, он печатает [], что означает, что он не дал никаких результатов.Почему это происходит, когда "fakeeee: fake: fake: fake" находится в базе данных.

PS: входные данные в базе данных не имеют пробелов до или после в поле (поэтому это не проблема с пробелами и т. Д.)

[РЕДАКТИРОВАТЬ]: как предлагается вместо

k = c.execute("SELECT orderid FROM proxy WHERE ip_address = ?",[k])

Я попробовал это:

k = c.execute("SELECT orderid FROM proxy WHERE ip_address = ?",(k,))

Однако он все еще вернулся []

...