У меня есть плагин для игрового сервера, который записывает изменения, внесенные в карту. База данных содержит записи, отформатированные так: id INTEGER PRIMARY KEY, перед INTEGER, matafter INTEGER, имя VARCHAR (50), дата DATE. Я пытаюсь создать функцию, которая при задании имени столбца, целого числа, строки или кортежа из целого числа или строки и ключевого слова найдет выбранные записи. пока что это код, к которому я пришел -
def readdb(self,keyword,column,returncolumn = "*"):
self.memwrite
if isinstance(keyword, int) or isinstance(keyword,str):
entry = [keyword]
qmarks = ("? OR " * len(entry))[:-4]
statement = 'SELECT all {0} FROM main WHERE {1} is {2}'.format(returncolumn,column,qmarks)
print(qmarks)
self.memcursor.execute(statement, entry)
return(self.memcursor.fetchall())
Ключевое слово - это ключевое слово для поиска, столбец - это столбец для поиска, а returncolumn - это возвращаемый столбец. Мне было интересно, почему этот код всегда не выбирает ни одной строки, EG - Возвращает None, независимо от того, что я добавил для функция. Кажется, это нормально работает, если я делаю эти вещи в консоли, но не если я обертываю их в функцию