gpt4 book ai didi

c# - Informix "no such DBspace"插入记录时出错

转载 作者:行者123 更新时间:2023-11-30 23:04:21 25 4
gpt4 key购买 nike

尝试使用 .NET Entity Framework 6.1.3 对 Informix 数据库(“DB2 v10.5.700.375 Fix Pack 7”)运行插入时出现错误

ERROR [IX000] [IBM][IDS/NT64] Invalid default sbspace name (sbspace). (-130 ISAM error: no such DBspace)

本页http://www-01.ibm.com/support/docview.wss?uid=swg21424434建议检查 onstat 命令。

“onstat -d”命令的输出是:

C:\Program Files\Informix>onstat -dIBM Informix Dynamic Server Version 12.10.FC9DE -- On-Line -- Up 1 days 22:26:52 -- 185088 KbytesDbspacesaddress          number   flags      fchunk   nchunks  pgsize   flags    owner    name0000000080CD5030 1        0x30001    1        1        4096     N  BA    informix rootdbs 1 active, 2047 maximumChunksaddress          chunk/dbs     offset     size       free       bpages     flags pathname0000000080CD5280 1      1      0          216064     91351                 PO-B-D C:\PROGRA~1\Informix\storage\rootdbs.000 1 active, 32766 maximumNOTE: The values in the "size" and "free" columns for DBspace chunks are      displayed in terms of "pgsize" of the DBspace to which they belong.Expanded chunk capacity mode: always

最佳答案

onstat -d 的输出显示您有一个名为 rootdbs 的常规数据库空间;它根本不显示任何 sbspace,更不用说一个名为 sbspace 的空间了。 sbspace(智能 blob 空间)用于存储智能 blob。您的系统配置为期望/使用名为 sbspace 的智能大对象空间。无论您要插入什么,都需要存储在智能大对象空间中。它可能是一个 BLOB 或 CLOB 值,也可能是另一种使用智能 blob 作为存储机制的类型。

您需要创建一个文件(或选择一个磁盘设备)以用于智能大对象空间,然后添加它。

看来您使用的是 Windows。可能还有其他方法可以做我将要做的类似 Unix 的事情。作为用户 informix,执行:

cd C:\PROGRA~1\Informix\storage
cp nul: sbspace.000
onspaces -c -S sbspace -p C:\PROGRA~1\Informix\storage\sbspace.000 -o 0 -s 10240

-c 表示“创建”; -S sbspace 表示“创建一个名为 sbspace 的 sbspace”; -p 指定文件的完整路径; -o 0 指定偏移量应为 0; -s 10240 将大小设置为 10 MiB。

一定要把尺寸调大;大多少取决于您要在智能 blob 空间中存储多少数据,而这又取决于您插入的内容、要插入的数据量以及每个数据量的大小。

偏移量为零是“糟糕的过去”的后遗症,当时磁盘驱动器还没有 2 GiB 那么大(它们在过去 30 年里一直在增长!)。假设偏移量将始终为零(但系统要求您指定零,而不是将其默认为零)除非您使用的是原始磁盘(您没有使用显示的命令)。 -p-o-s 的参数序列也很重要。

您应该在添加智能大对象空间后对系统进行归档。

如果您将来需要更多空间,可以向现有智能大对象空间添加更多 block 。

您可以通过将 onspaces 作为 informix 运行而没有其他选项来找到更多选项;它显示了您可以指定的其他内容。

您可以在 IBM 知识中心找到 onspaces 的手册页:

关于c# - Informix "no such DBspace"插入记录时出错,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49441015/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com