sql >> Databáze >  >> RDS >> Mysql

Provádění různých dotazů pomocí mysql-python

Myslím, že to je to, co hledáte.

def connect_and_get_data(query, data):
    ...
    cursor.execute(query, data)
    ...

def get_data_about_first_amazing_topic(useful_string):
    query = "SELECT ... FROM ... WHERE ... AND some_field=%s"
    connect_and_get_data(query, ("one","two","three"))
    ...

Pokud však budete rychle zadávat několik dotazů, bylo by lepší připojení znovu použít, protože vytváření příliš mnoha připojení může ztrácet čas.

...
CONNECTION = MySQLdb.connect(host=..., port=...,
                             user=..., passwd=..., db=...,
                             cursorclass=MySQLdb.cursors.DictCursor,
                             charset = "utf8")
cursor = CONNECTION.cursor()
cursor.execute("SELECT ... FROM ... WHERE ... AND some_field=%s", ("first", "amazing", "topic"))
first_result = cursor.fetchall()

cursor.execute("SELECT ... FROM ... WHERE ... AND some_field=%s", (("first", "amazing", "topic")))
second_result = cursor.fetchall()

cursor.close()
...

Díky tomu bude váš kód fungovat mnohem lépe.



  1. Chyba syntaxe PHP PDO nebo porušení přístupu:1064 při vložení

  2. Jak získám plán provádění dotazů na serveru SQL Server?

  3. Odstraňte havarovanou tabulku Innodb

  4. ASP.Net / MySQL :Překlad obsahu do několika jazyků