如果value =?则从数据库中删除行?在SQLAlchemy中

时间:2016-08-12 14:47:52

标签: python sqlite sqlalchemy

我在同一个.db文件中有两个单独的SQL表。这是使用SQLite。

表1

column1   column2
ggg       values
ttt       values
yyy       values
hhh       values
ddd       values
jjj       values

表2

column1   column2   column3    column4
ggg       values    s_values     words
zzz       values    s_values     words
aaa       values    s_values     words
qqq       values    s_values     words
hyh       values    s_values     words
jjj       values    s_values     words

使用表1作为基础,如果表2包含表1中的项目,如何删除表2中的整行?

test1 = pandas.read_sql_table('table 1', con=engine)['column1']
test2 = pandas.read_sql_table('table 2', con=engine)['column1']

for each_item in test1:
    if each_item in test2['column1'].unique():
        connection.execute('DELETE FROM "table2" WHERE column1=?', column1=each_item)

我已阅读stackoverflow上的大部分帖子,并检查了有关此问题的文档,但我在row中删除table2时仍然遇到错误。

1 个答案:

答案 0 :(得分:0)

感谢Jon CLements,我意识到我没有打开引擎的错误。因此得到错误。 :(