recherche

Maison  >  Questions et réponses  >  le corps du texte

Comment gérer cette erreur dans python pymysql.err.ProgrammingError : (1064, ' à la ligne 1")

root@iZbp1iqn00z9x3jov6bas1Z:/data/wwwlogs/www# python log1.py
multiprocessing.pool.RemoteTraceback:
"""
Traceback (most recent call last):
  File "/usr/lib/python3.5/multiprocessing/pool.py", line 119, in worker
    result = (True, func(*args, **kwds))
  File "/usr/lib/python3.5/multiprocessing/pool.py", line 44, in mapstar
    return list(map(*args))
  File "log1.py", line 289, in main_loop
    create_table(table_name)
  File "log1.py", line 87, in create_table
    con_cur.execute(creat_table.format(t_name))
  File "/usr/local/lib/python3.5/dist-packages/pymysql/cursors.py", line 166, in execute
    result = self._query(query)
  File "/usr/local/lib/python3.5/dist-packages/pymysql/cursors.py", line 322, in _query
    conn.query(q)
  File "/usr/local/lib/python3.5/dist-packages/pymysql/connections.py", line 856, in query
    self._affected_rows = self._read_query_result(unbuffered=unbuffered)
  File "/usr/local/lib/python3.5/dist-packages/pymysql/connections.py", line 1057, in _read_query_result
    result.read()
  File "/usr/local/lib/python3.5/dist-packages/pymysql/connections.py", line 1340, in read
    first_packet = self.connection._read_packet()
  File "/usr/local/lib/python3.5/dist-packages/pymysql/connections.py", line 1014, in _read_packet
    packet.check_error()
  File "/usr/local/lib/python3.5/dist-packages/pymysql/connections.py", line 393, in check_error
    err.raise_mysql_exception(self._data)
  File "/usr/local/lib/python3.5/dist-packages/pymysql/err.py", line 107, in raise_mysql_exception
    raise errorclass(errno, errval)
pymysql.err.ProgrammingError: (1064, "You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '' at line 1")
"""

The above exception was the direct cause of the following exception:

Traceback (most recent call last):
  File "log1.py", line 326, in <module>
    p.map(main_loop, logs_list)
  File "/usr/lib/python3.5/multiprocessing/pool.py", line 260, in map
    return self._map_async(func, iterable, mapstar, chunksize).get()
  File "/usr/lib/python3.5/multiprocessing/pool.py", line 608, in get
    raise self._value
pymysql.err.ProgrammingError: (1064, "You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '' at line 1")

Comment gérer cette erreur

python3.5.2

L'erreur est signalée comme suit

Format du journal

滿天的星座滿天的星座2779 Il y a quelques jours2546

répondre à tous(2)je répondrai

  • phpcn_u1582

    phpcn_u15822017-05-18 11:03:36

    Il semble que votre erreur soit une erreur dans l'instruction SQL. Elle devrait être causée par votre caractère de nouvelle ligne
    Il est recommandé d'utiliser trois guillemets pour la nouvelle ligne dans l'instruction SQL, tels que

    .
    create_table = """
        sql语句
    """

    répondre
    0
  • 过去多啦不再A梦

    过去多啦不再A梦2017-05-18 11:03:36

    Nom de la variable : log_pattern_obj Non défini, vérifiez si vous avez tapé la mauvaise lettre ou si vous avez oublié de la définir

    répondre
    0
  • Annulerrépondre