【发布时间】:2014-12-10 19:22:37
【问题描述】:
我在.net 中的OracleDataAdapter 上使用FillSchema。 SelectCommand 适用于全局临时表。
对于第一次运行,这很好用。我会得到全局临时表的架构
然后我删除该临时表并使用不同的架构创建一个新的临时表。
之后,对于第二次运行,FillSchema 方法仍将返回旧删除的临时表中的架构。
我错过了什么吗? select 命令不应该从新版本的临时表中查询架构吗?
感谢您的帮助!
【问题讨论】:
-
也许,您的尝试
DROP没有成功,因为它可能正在使用中!而且您在不同架构中的创建会成功。但是当您第二次查询时..您应该错过了架构别名..并且同义词(私有)仍然引用了旧表! -
但是当我检查中间的全局临时表时,我发现它在删除之后消失了,并且我看到它是用不同的架构重新创建的。
-
如果不检查您的代码就很难确认。顺便说一句,动态创建和删除 GTT 并不是一个好主意。 GTT 中的数据对于插入其中的会话来说是完全本地的。而且没有必要即时创建它。
-
表格是
GLOBAL.. 内容是插入者的本地内容..
标签: sql .net oracle dataadapter global-temp-tables