在Sqlite数据库中搜索包含某些单词的行

问题描述 投票:0回答:1

我正在为 EVE Online 制作一个killboard,并且想要对字符串中包含的某些单词进行数据库搜索。 这是我的数据库的所有列名称: ID 最后一击名称 Final_blow_ship_type 受害者姓名 受害者公司 受害者_生日 受害者性别 受害者安全状态 受害者船舶类型 系统安全状态 攻击者_len

我使用 LIKE 和 WHERE 来做到这一点。但它给出了错误“没有这样的列:我正在寻找的名称”。 这是我的代码:

    path = 'C:/Users/mrjol/PycharmProjects/myboard/board_veiw/database.db'
    connection = sqlite3.connect(path)
    cursor = connection.cursor()
    search_request = str(request.session.pop('search_request', 'None'))
    character_name_1 = search_request.partition(' ')[0]
    character_name_2 = search_request.partition(' ')[2]
    if character_name_2 != '':
        search_request = character_name_1 + '_' + character_name_2
    search_answer = cursor.execute('SELECT final_blow_name FROM Killmails WHERE final_blow_name = Cosmo_Blink')
    connection.close()
django sqlite
1个回答
0
投票

问题就在这里

search_answer = cursor.execute('SELECT final_blow_name FROM Killmails WHERE final_blow_name = Cosmo_Blink')
。从语法上来说,sql 正在寻找名为 Cosmo_Blink
column
。按照文档中所述使用参数替换(绑定)。

© www.soinside.com 2019 - 2024. All rights reserved.