c# - 无法使用 IDataReader 读取临时表
问题描述
是否可以使用 IDataReader 读取临时表?我通过 ODBC 连接到雪花。
//e.g.
CREATE TEMPORARY TABLE TEMPTABLE1 (ID INT);
sting query = "SELECT * FROM DB1.INFORMATION_SCHEMA.TABLES WHERE TABLE_TYPE = 'LOCAL TEMPORARY' OR TABLE_TYPE = 'GLOBAL TEMPORARY' OR TABLE_TYPE = 'TEMPORARY' OR TABLE_TYPE = 'VOLATILE'";
using (IDataReader reader = Connection.Query(query, null))
{
while (reader.Read()) {...}
}
阅读器是空的,是我在哪里弄错了,还是这个有一些技术限制?
解决方案
您正在创建临时表,然后您将与 IDataReader 连接。这就是为什么您看不到该表的原因 - 它的另一个会话和临时表仅存在于创建它们的会话中。
https://docs.snowflake.com/en/user-guide/tables-temp-transient.html#temporary-tables
推荐阅读
- haskell - 持久的“upsert”不起作用
- azure-devops - 在 VSTS 中跨团队项目共享安全文件
- node.js - 使用 npm package 验证包名
- python - 带有 If Else 语句的 Python Tkinter 按钮
- python - 如何在熊猫中合并/加入/连接/对齐两个具有不同时间间隔索引和大小的df
- python - 我如何知道我的令人尴尬的并行任务是否适合 GPU?
- oracle - Oracle SQL 和 PL/SQL 上下文切换
- woocommerce - 自定义 WooCommerce 支付网关未显示
- javascript - AngularJS UI 路由器在本地主机上不起作用
- java - 达到改变Java工作目录的效果