DB2 和 Django - 为什么表总是按列组织创建?
DB2 And Django - Why Tables Always Created As Column Organized?
我已经使用了这个问题的答案中提到的步骤。
但是所有 table 都是按列组织的方式创建的,这会在更改 table 时产生问题,这个问题是针对初始迁移本身的管理、身份验证、内容类型等
我们能否以某种方式将 table 创建更改为按行排列?
具体来说,我得到了下面提到的错误:
django.db.utils.ProgrammingError:异常('Statement Execute Failed: [IBM][CLI Driver][DB2/LINUXX8664] SQL1667N The operation failed because the operation is not supported with the type of the specified table. Specified table: ".DJANGO_CONTENT_TYPE". Table type: "ORGANIZE BY COLUMN". Operation: "ALTER TABLE". SQLSTATE=42858\r SQLCODE=-1667')
您的问题没有提及您的云详细信息,特别是它是共享的还是私有的 Db2 实例等。此外,您可能正在云上使用 Db2 仓库,它可能配置为经常使用 organize by column
的分析工作负载默认为 table 秒。
用于共享使用的数据库配置和 Db2 实例配置可能(由 IBM)为云实例预先配置,您可能无法更改它们。
在 Db2-instance 上,Db2-registry 变量设置 DB2_WORKLOAD=ANALYTICS
和数据库参数 dft_table_org
可以确定默认的 table 组织。您可以通过 table 函数和 SQL 或通过 shell 访问私有 Db2 实例来查询这些值(如果您具有相关权限和相关访问权限)。
对于共享数据库或共享 Db2 实例,您可以安排 CREATE TABLE
语句 DDL 始终包含 ORGANIZE BY ROW
用于 table 用于 OLTP 类型处理的语句。
我已经使用了这个问题的答案中提到的步骤
但是所有 table 都是按列组织的方式创建的,这会在更改 table 时产生问题,这个问题是针对初始迁移本身的管理、身份验证、内容类型等
我们能否以某种方式将 table 创建更改为按行排列?
具体来说,我得到了下面提到的错误:
django.db.utils.ProgrammingError:异常('Statement Execute Failed: [IBM][CLI Driver][DB2/LINUXX8664] SQL1667N The operation failed because the operation is not supported with the type of the specified table. Specified table: ".DJANGO_CONTENT_TYPE". Table type: "ORGANIZE BY COLUMN". Operation: "ALTER TABLE". SQLSTATE=42858\r SQLCODE=-1667')
您的问题没有提及您的云详细信息,特别是它是共享的还是私有的 Db2 实例等。此外,您可能正在云上使用 Db2 仓库,它可能配置为经常使用 organize by column
的分析工作负载默认为 table 秒。
用于共享使用的数据库配置和 Db2 实例配置可能(由 IBM)为云实例预先配置,您可能无法更改它们。
在 Db2-instance 上,Db2-registry 变量设置 DB2_WORKLOAD=ANALYTICS
和数据库参数 dft_table_org
可以确定默认的 table 组织。您可以通过 table 函数和 SQL 或通过 shell 访问私有 Db2 实例来查询这些值(如果您具有相关权限和相关访问权限)。
对于共享数据库或共享 Db2 实例,您可以安排 CREATE TABLE
语句 DDL 始终包含 ORGANIZE BY ROW
用于 table 用于 OLTP 类型处理的语句。