小编Man*_*nds的帖子

Sqlalchemy 多次插入失败,列名中带有百分比符号 (%)

我正在尝试使用 sqlalchemy(版本 1.0.11)对列名中带有百分比符号的列执行多插入。行可以被插入一个在没有问题的时刻,但是当执行多刀片与con.execute()一个OperationalError异常。

下面的代码重现了这个问题。创建了两个表,一个在列中有百分比名称,另一个没有。

  1. 列名中带有 % 的表上的多重插入失败。
  2. 在列名中使用 % 在表中一一插入行是有效的。
  3. 在列名中没有 % 的表上的多插入工作。
    from sqlalchemy import *
    
    USER = 'root'
    PASSWORD = ''
    HOST = '127.0.0.1'
    DBNAME = 'test'
    
    connect_str = "mysql://{USER}:{PASSWORD}@{HOST}/{DBNAME}".format(
        USER = USER,
        PASSWORD = PASSWORD,
        HOST = HOST,
        DBNAME = DBNAME
    )
    
    engine = create_engine(connect_str, echo = False)
    
    metadata = MetaData()
    
    table_with_percent = Table('table_with_percent', metadata,
         Column('A%', Integer),
         Column('B%', Integer)
    )
    
    table_no_percent = Table('table_no_percent', metadata,
         Column('A', Integer),
         Column('B', Integer)
    )
    
    metadata.create_all(engine, checkfirst = True) …
Run Code Online (Sandbox Code Playgroud)

python sqlalchemy

6
推荐指数
1
解决办法
1440
查看次数

标签 统计

python ×1

sqlalchemy ×1