python - read_sql_query 所有表上的无效对象名称
问题描述
我试图在 Jupyter 中通过 pandas 的 read_sql_query 运行一个非常基本的 SQL 查询,即
df=pd.read_sql_query('SELECT * FROM table_name',conn)
print(df)
查询未执行,显示 ProgrammingError 42S02 - Invalid object name 'table_name'。然而,当我运行相同的查询并将 table_name 替换为 sys.tables 时,
df=pd.read_sql_query('SELECT * FROM sys.tables',conn)
print(df)
该列表显示所有表,包括 table_name 表。我也试过 db_name.table_name ,它告诉我 db_name.table_name 是无效对象。
可能是什么问题?
解决方案
正如@Datanovice 在评论中指出的那样,查询中缺少数据库模式。添加架构缩写后,一切正常
推荐阅读
- c# - 从 Class Libary .NET Core 3 中的非控制器类访问 ILogger
- javascript - 用于隔离组件的 React 事件侦听器
- asp.net - 检测到来自客户端 (<) 的潜在危险 Request.Path 值。从框架管道获取异常
- java - 为什么 listiterator 中的 hasPrevious() 和 add() 组合进入无限循环,而 hasNext() 和 add() 没有?
- python - 使用关键点 R-CNN 和 DensePose 的鼻子和脚坐标
- php - 即使使用正确的令牌,Laravel 中间件 api 也总是返回 null
- sql - 如何构建正确的 JSON
- react-native - 在 react-native-modal-selector 中添加图像或图标
- google-chrome-devtools - Chrome DevTools 颜色选择器吸管不起作用
- postgresql - 区分大小写的排序(词法排序)不起作用 PostgreSQL citext 类型