我想在Oracle数据库中创建一个临时表
就像是
Declare table @table (int id)
在SQL Server中
然后用选择语句填充它
是否有可能?
谢谢
是的,Oracle有临时表。这是描述它们的AskTom文章的链接,这是oracle的官方CREATE
TABLE文档。
但是,在Oracle中,只有临时表中的 数据 是临时的。该表是其他会话可见的常规对象。在Oracle中频繁创建和删除临时表是一种不好的做法。
CREATE GLOBAL TEMPORARY TABLE today_sales(order_id NUMBER)
ON COMMIT PRESERVE ROWS;
Oracle18c添加了私有临时表,这些临时表是单会话内存中的对象。有关更多详细信息,请参见文档。私有临时表可以动态创建和删除。
CREATE PRIVATE TEMPORARY TABLE ora$ptt_today_sales AS
SELECT * FROM orders WHERE order_date = SYSDATE;
临时表可能有用,但在Oracle中通常被滥用。通常可以通过使用内联视图将多个步骤组合到单个SQL语句中来避免它们。
我已经在我的机器上安装了Oracle 11g XE。现在我通过系统模式连接它。如何创建自己的数据库。就像在MS SQL中使用 如何在Oracle11gXe中创建这样的数据库。
问题内容: 假设我有某种类型: 现在我想基于这种类型创建一个临时表,我该怎么做? 同样,从此:基于用户定义的类型创建表: 问题答案: [\Pure.Krome的答案)显示了如何使用表变量而不是#temp表。如果您确实想要基于已知表类型的#temp表(而不必知道列名/定义),则可以说: 现在,应与表类型的表结构匹配,减去约束(以及从SQL Server 2014开始的边际有用的二级索引)。 当然,随
在此容器中只存在默认DB。 如何创建数据库?
问题内容: 我目前正在为一家餐馆开发门户应用程序。使用的后端数据库是Mysql,而我正在使用Spring JDBC支持来编写数据访问逻辑。 我的某些DAO充满了多个查询,并且正获得多达数千行的代码。我认为我可以通过将一些逻辑移到SQL- PSM过程中来减少大小和复杂性(因为Java中的数据绑定和粘合代码是令人讨厌的事情)。 但是,我对Db没有DDL权限,因此无法创建该过程。 我想知道是否有一种方法
问题内容: 我正在使用Hibernate租约,并且每次用户登录时,我都将数据库更改为其用户名(SQLite)。可悲的是,有时数据库不存在,我需要创建它。 问题是我不知道如何在运行时在数据库中创建所有表。 通常,Hibernete为此创建数据库: 问题答案: 创建数据库之后,可以为此使用SchemaExport导出要在新创建的数据库中创建的实体。基本步骤如下。如何获取配置的属性并不重要。 Javad
我申请了一家公司的实习,作为一个问题,他们要求我为他们的公司创建一个有特定要求的模式,并将DDL文件邮寄给他们。我已经安装了Oracle数据库11g Express版本,但是如何在Oracle数据库11g中创建新的模式?我在网上搜索了一个解决方案,但我不明白该怎么办。创建架构后,我应该邮寄哪个文件?