Fehler beim Einfügen langer Python-SQLite3-Anweisungen
曾经蜡笔没有小新
曾经蜡笔没有小新 2017-07-05 10:35:44
0
1
1102

Python verwendet sqlite3, um lange Anweisungen einzufügen, und es tritt ein Fehler auf.
Python2.7
Der Quellcode sowie die Testergebnisse sind unten aufgeführt. Es ist kein Problem, im Terminal so zu arbeiten, wie es ist, aber es gibt einen Fehler beim Ausführen in Python

import xlrd
import multiprocessing
from sql import sql_method
mysqlite=sql_method()
def table_compare():
query='''select * FROM compare_sales_order WHERE ( compare_sales_order.order_num, compare_sales_order.product_name, compare_sales_order.col_color) not IN(SELECT order_num, product_name, col_color FROM sales_order) '''
# print query
data=mysqlite.conn.execute(query)
for i in data:
    print i
table_compare()

1 Test in 0,000 Sekunden durchgeführt

FEHLGESCHLAGEN (Fehler=1)

Error
Traceback (most recent call last):
  File "C:\Python27\lib\unittest\case.py", line 329, in run
    testMethod()
  File "C:\Python27\lib\unittest\loader.py", line 32, in testFailure
    raise exception
ImportError: Failed to import test module: test
Traceback (most recent call last):
  File "C:\Python27\lib\unittest\loader.py", line 254, in _find_tests
    module = self._get_module_from_name(name)
  File "C:\Python27\lib\unittest\loader.py", line 232, in _get_module_from_name
    __import__(name)
  File "E:\python\excel_python\test.py", line 14, in <module>
    table_compare()
  File "E:\python\excel_python\test.py", line 11, in table_compare
    data=mysqlite.conn.execute(query)
OperationalError: near ",": syntax error

Kein Problem, so wie es ist, in das Terminal einzutippen

曾经蜡笔没有小新
曾经蜡笔没有小新

Antworte allen(1)
给我你的怀抱

你的SQL写得有问题

sql = """
select
    *
FROM
    compare_sales_order a
WHERE
    not exists
    (
        SELECT 
            1
        FROM sales_order b
        where 
            a.order_num=b.order_num
            and a.product_name=b.product_name
            and a.col_color=b.col_color
    )
"""
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage