2017-01-24 8 views
-1

В колбу, я попыталсяИспользование Like Оператора с переменной в MariaDB и Python

with db.engine.connect() as connection 
    query_str = "SELECT * FROM db_name WHERE name LIKE :condition" 
    connection.execute(text(query_str), condition="%" + word + "%") 

Но это не сработало. Как я могу исправить код?

+0

При использовании '%' в качестве подстановочного знака вам нужно 'LIKE', а не' = '. Рассмотрим использование индекса FULLTEXT. –

ответ

0

От https://mariadb.com/resources/blog/how-connect-python-programs-mariadb

import mysql.connector as mariadb 
mariadb_connection = mariadb.connect() 
cursor = mariadb_connection.cursor() 
cursor.execute("SELECT * FROM db_name WHERE name LIKE %s", (some_name,)) 

Вопрос заключается в том, что вы вызываете выполнить() на соединении, а не курсором этой связи.