我目前正在使用 Visual Studio 2015(在 BIDS 2008 中制作)更新所有 ETL,并将它们重新部署到在 SQL Server 2016(最初为 2008R2)上运行的新报告服务器。
在更新其中一个 ETL 时,我收到此错误:
<小时/><小时/>Exception from HRESULT: 0xC0202009 Error at Load Staging Table [OLE DB Source [129]]: SSIS Error Code DTS_E_OLEDBERROR. An OLE DB error has occurred. Error code: 0x80004005. An OLE DB record is available. Source: "Microsoft SQL Server Native Client 10.0" Hresult: 0x80004005 Description: "Invalid object name 'dbo.TimeSheets'.".
这是我尝试过的:
- 检查我的连接字符串以确保它们正确。
- 检查架构以确保其存在且正确。
- 从 SSMS 运行查询并且成功。
- Ctrl + Shift + R 刷新智能感知。
- 检查是否存在另一个同名的表。
- 重新启动 Visual Studio 和 SSMS。
最佳答案
我从问题的评论中得到了成功的修复“另一个选项是完全限定表名{database}.{schema}.{table}
以确保,无论默认目录,您查询正确的数据库。”
我正在使用其他一些数据库,它正在缓存并使用该数据库名称,而不是我更改为的新数据库名称。
关于sql - SSIS错误: Invalid object name - but object exists and query runs in SSMS,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41387110/