SQLAlchemy警告文本列表达式是否应显式声明?

2024-04-26 14:10:22 发布

您现在位置:Python中文网/ 问答频道 /正文

我一直收到这样的警告,不管是什么似乎无法摆脱它(除了超越它):

C:\...\site-packages\sqlalchemy\sql\elements.py:4390: SAWarning:
Textual column expression 'column_name' should be explicitly declared
with text('column_name'), or use column('column_name') for more
specificity 

if guess_is_literal else "column"

我在一个元数据上下文中构建Column()对象(列名+数据类型)的列表,然后在另一个元数据上下文中使用该列表创建一个表。当这起作用时,它确实会发出警告。我试过:

  • 作为“存储名称”
  • 使用column()将列转换为“ColumnClause”
  • 使用text()将列转换为“TextClause”
  • 使用str()将列转换为字符串

不管怎样,我还是得到警告。在

下面是一些Python代码片段:

^{pr2}$

Tags: 数据textnamepy警告列表sqlsqlalchemy
1条回答
网友
1楼 · 发布于 2024-04-26 14:10:22

你应该把它转换成文本,就像错误解释的那样。为此,请根据您的需要调整以下代码:)

from sqlalchemy.sql import text
...
cursor.execute(text(<whatever_needed_to_be_casted>))

相关问题 更多 >