在 Oracle 23c 中,数据库表或视图中允许的最大列数已增加到 4096。此功能允许您构建可以在单个表中存储超过之前 1000 列限制的属性的应用程序。某些应用程序(例如机器学习和流式 IoT 应用程序工作负载)可能需要使用包含超过 1000 列的非规范化表。
您现在可以在单行中存储大量属性,这对于某些应用程序来说可以简化应用程序设计和实现。
可以使用 MAX_COLUMNS 参数启用或禁用数据库的宽表。
代码语言:javascript复制String
- 要启用宽表,将 MAX_COLUMNS 参数设置为 EXTENDED。通过此设置,数据库表或视图中允许的最大列数为 4096。
- COMPATIBLE 初始化参数必须设置为 23.0.0.0 或更高才能设置 MAX_COLUMNS = EXTENDED。
- 要禁用宽表,请将 MAX_COLUMNS 参数设置为 STANDARD。通过此设置,数据库表或视图中允许的最大列数为 1000。这与 Oracle Database 23c 之前版本中的行为相匹配。
可以随时将 MAX_COLUMNS 的值从 STANDARD 更改为 EXTENDED。但是,仅当数据库中的所有表和视图包含 1000 或更少的列时,才可以将 MAX_COLUMNS 的值从 EXTENDED 更改为 STANDARD。
Oracle Database 23c 客户端(例如 SQL*Plus、OCI、JDBC-OCI、非托管 ODP.NET 和开源驱动程序)支持增加的列限制 4096。较旧的客户端版本(Oracle Database 23c 之前的版本)不支持增加的列限制,并且无法访问表或视图中超过 1000 列。
此参数从 Oracle Database 23c 开始可用。