跳到主要内容

从 -100 至 -199 的错误代码

-100 ISAM error: duplicate value for a record with unique key.

A row that was to be inserted or updated has a key value that already exists in its index. For C-ISAM programs, a duplicate value was presented in the last call to iswrite, isrewrite, isrewcurr, or isaddindex. Review the program logic and the input data. For SQL products, a duplicate key value was used in the last INSERT or UPDATE.

要插入或更新的行具有索引中已经存在的键值。对于 C-ISAM 程序,在最后一次调用iswrite、isrewrite、isrewcurr 或者 isaddindex 时显示了一个重复的值。

检查程序逻辑和输入数据。对于 SQL 产品,在最后一次 INSERT 或 UPDATE 更新中使用了一个重复的键值。

-101 ISAM error: file is not open.

The program attempted to use an unopened file, table, partition,tablespace, or other storage object, or one of these whose access mode did not support the requested operation (for example, an attempt to write to a file that was opened in read-only mode).

程序试图使用未打开的文件、表、分区、表空间或其他存储对象,或其中之一的访问模式不支持所请求的操作(例如,尝试写入以只读模式打开的文件)。

If the error recurs, refer to the information on trapping errors in your Administrator's Guide or Reference for additional diagnostics.

Contact GBase Technical Support with the diagnostic information.

如果错误再次出现,请参阅有关捕获错误的信息。请与 GBase 技术支持部门联系,了解诊断信息。

-102 ISAM error: illegal argument to ISAM function.

A parameter that was presented to one of the C-ISAM functions is outside the range of acceptable values. For C-ISAM programs, review the parameters that were used in this function call, and compare them to the documentation for the function. If the error recurs, refer to the information on trapping errors in your Administrator's Guide or Reference to acquire additional diagnostics. Contact GBase Technical Support with the diagnostic information.

给 C-ISAM 函数之一的参数超出了可接受值的范围。对于 C-ISAM 程序,请检查此函数调用中使用的参数,并将它们与函数的文档进行比较。如果再次出现错误,请参考管理员指南或引用中有关捕获错误的信息,以获取其他诊断信息。请与 GBase 技术支持部门联系,了解诊断信息。

-103 ISAM error: illegal key descriptor (too many parts or too long).

The ISAM processor has been given an invalid key descriptor. For C-ISAM programs, review the key descriptor. Each key descriptor has a maximum of 8 parts and 120 characters. If the error recurs, refer to the information on trapping errors in your Administrator's Guide or Reference to Appendix entitled "Trapping Errors" in your Administrator's Guide or Reference to acquire additional diagnostics. Contact GBase Technical Support with the diagnostic information.

ISAM 处理器被赋予了一个无效的键描述符。对于 C-ISAM 程序,请检查键描述符。每个键描述符最多有 8 个部分和 120 个字符。如果再次出现错误,请参考“管理员指南或指南”中有关捕获错误的信息,或参考“管理员指南”中题为“捕获错误”的附录或参考以获取其他诊断信息。使用诊断信息与GBase技术支持联系。

-104 ISAM error: too many files open.

The ISAM processor has reached its limit of open files. For C-ISAM programs, review the program logic and change it so that fewer files are open concurrently. Use isclose to close unneeded files. For SQL products, this query is too complex; it uses too many tables concurrently. For example, a trigger procedure running with PDQ enabled can open many tables during constraints processing.

Perform the query in steps, and use temporary tables.

ISAM 处理器已经达到了打开文件的极限。对于 C-ISAM 程序,检查程序逻辑并更改它,以便减少并发打开的文件。使用 isclose 关闭不需要的文件。对于SQL 产品,这个查询太复杂了;它同时使用了太多的表。例如,启用 PDQ 的触发器过程可以在约束处理期间打开多个表,分步骤执行查询,并使用临时表。

-105 ISAM error: bad ISAM file format.

The contents of an ISAM file (table or index) have been corrupted. For C-ISAM, if you used transaction logging, you can use the isrecover program to recover the file. Otherwise, re-create the file or restore it from backup. For SQL products, use the bcheck or secheck utility to get more information on the problem and possibly correct it (use the oncheck utility . If the utility cannot recover the table or index,you will have to re-create or restore it.

ISAM 文件(表或索引)的内容已损坏。如果使用事务日志记录,则可以使用 isrecover程序恢复文件。否则,重新创建文件或从备份中恢复它。对于 SQL 产品,请使用bcheck 或 secheck 实用程序获取有关问题的更多信息,并可能加以纠正(使用 oncheck实用程序。如果实用程序无法恢复表或索引,则必须重新创建或恢复它。

-106 ISAM error: non-exclusive access.

The ISAM processor has been asked to add or drop an index but it does not have exclusive access. For C-ISAM programs, the file must be opened with exclusive access before you perform this operation. Review the program logic, and make sure that it opens this file by passing the ISEXCLLOCK flag to isopen. For SQL products, the database server returns this error when an exclusive lock is required on a table. For example, this error appears when a second user tries to alter a table that the first user has locked.

Or the ISAM processor could not obtain access to the requested table or index because it has been opened exclusively by another user.

This condition is normally transient, retry operation after some delay.

ISAM 处理器被要求添加或删除索引,但它没有独占访问权。对于 C-ISAM 程序,在执行此操作之前,必须使用独占访问打开文件。检查程序逻辑,并确保它通过将 ISEXCLLOCK标志传递给 isopen 来打开该文件。对于 SQL 产品,数据库服务器在表上需要独占锁时返回此错误。例如,当第二个用户试图更改第一个用户已锁定的表时,就会出现此错误。

或者 ISAM 处理器无法访问请求的表或索引,因为它是由另一个用户独占打开的。这种情况通常是短暂的,延迟后重试操作。

-107 ISAM error: record is locked.

Another user request has locked the record that you requested or the file (table) that contains it. This condition is normally transient. A program can recover by rolling back the current transaction, waiting a short time, and re-executing the operation. For interactive SQL, redo the operation. For C-ISAM programs, review the program logic and make sure that it can handle this case, which is a normal event in multiprogramming systems. You can obtain exclusive access to a table by passing the ISEXCLLOCK flag to isopen. For SQL programs, review the program logic and make sure that it can handle this case, which is a normal event in multiprogramming systems. The simplest way to handle this error is to use the statement SET LOCK MODE TO WAIT. For bulk updates, see the LOCK TABLE statement and the EXCLUSIVE clause of the DATABASE statement.

另一个用户请求已锁定您请求的记录或包含该记录的文件(表)。这种情况通常是暂时的。程序可以通过回滚当前事务、等待很短时间并重新执行操作来恢复。对于交互式SQL,请重做操作。对于 C-ISAM 程序,检查程序逻辑并确保它能够处理这种情况,这是多道程序系统中的一个正常事件。您可以通过把 ISEXCLLOCK 标志传给 isopen 获得对表的独占访问。对于 SQL 程序,请检查程序逻辑并确保它能够处理这种情况,这是多道程序系统中的异常事件。处理此错误的最简单方法是使用 SET LOCK MODE TO WAIT语句。有关大容量更新,请参阅 LOCK TABLE 语句和 DATABASE 语句的独占子句。

-108 ISAM error: key already exists.

The ISAM processor has been asked to create an index that already exists. For C-ISAM programs, review the program logic. The program must delete this existing index before it defines another. If the error recurs, note all circumstances and contact GBase Technical Support.

ISAM 处理器被要求创建一个已经存在的索引。对于 C-ISAM程序,请检查程序逻辑。

程序必须在定义另一个索引之前删除此现有索引。如果出现错误,请记录所有情况并与GBase 技术支持联系。

-109 ISAM error: the key is the file's primary key.

The ISAM processor has been asked to delete the primary key index. For C-ISAM programs, the isdelindex call cannot delete the primary key. If the error recurs, note all circumstances and contact GBase Technical Support.

要求 ISAM 处理器删除主键索引。对于 C-ISAM 程序,isdelindex 调用不能删除主键。

如果错误再次发生,请注意所有情况,并与 GBase 技术支持部门联系。

-110 ISAM error: end or beginning of the file.

Reading rows sequentially, forward or backward, the ISAM processor has reached one end of the file (table). For C-ISAM programs, this message is the normal signal for end of file. Use a different retrieval mode of isread to reposition the file. For SQL products, see the SQL error message or return code.

按顺序、向前或向后读取行,ISAM 处理器已到达文件(表)的一端。对于 C-ISAM程序,此消息是文件结束时的正常信号。使用不同的 isread 检索模式重新定位文件。

有关 SQL产品,请参见 SQL错误消息或返回代码。

-111 ISAM error: no record found.

The ISAM processor cannot locate the requested record. For C-ISAM programs, no record was found with the requested index value or record number, depending on the retrieval mode in use. Make sure that the correct index is in use. For SQL products, see the SQL error message or return code. Probably no row was found for this query.

ISAM 处理器无法找到请求的记录。对于 C-ISAM 程序,根据使用中的检索模式,没有找到带有请求的索引值或记录号的记录。确保使用了正确的索引。有关 SQL 产品,请参见 SQL 错误消息或返回代码。该查询可能找不到任何行。

-112 ISAM error: there is no current record.

The ISAM processor has been asked to return the current record, but none has been established. For C-ISAM programs, review the program logic. Before the program uses the ISCURR retrieval mode, it must use another retrieval mode, such as ISFIRST, to establish a current record.

If the error recurs, note all circumstances and contact GBase Technical Support.

ISAM 处理器已被要求返回当前记录,但未建立任何记录。对于 C-ISAM 程序,请检查程序逻辑。在程序使用 ISCURR 检索模式之前,它必须使用另一种检索模式,如ISFIRST,以建立当前记录。如果错误再次发生,请注意所有情况,并与 GBase 技术支持部门联系。

-113 ISAM error: the file is locked.

Another user request has opened the file (table) that was requested in exclusive mode. In systems that use files for locking, a tablename.lok file exists. Possibly such a file was left behind when another program terminated abnormally. If you are sure that is the case, you can release the lock by emptying that file. Lock files are not used in many systems, and they are never used with GBase 8s Dynamic Server or GBase 8s OnLine Dynamic Server.

另一个用户请求打开了非独占模式请求的文件(表)。在使用文件进行锁定的系统中,存在一个 tablename.lok 文件。当另一个程序异常终止时,可能会留下这样的文件。

如果您确信是这样的,则可以通过清空该文件来释放锁。锁文件在许多系统中不被使用,而且它们也从未与 GBase 8s Dynamic Server 或 GBase 8s OnLine Dynamic Server一起使用。

This error occurs with GBase 8s Dynamic Server or GBase 8s OnLine Dynamic Server when a user attempts to access a table that has been locked.

当用户试图访问已锁定的表时,GBase 8s Dynamic Server 或 GBase 8s OnLine Dynamic Server 会发生此错误。

For C-ISAM programs, rerun the program after the file is unlocked. For SQL products, tables are locked explicitly using the LOCK TABLE statement and implicitly during the execution of the CREATE INDEX or ALTER TABLE statement. Rerun the program or query when the table is unlocked.

对于 C-ISAM 程序,在文件解锁后重新运行该程序。对于 SQL 产品,表被显式地使用锁表语句锁定,并在 CREATE INDEX 或ALTER TABLE 语句的执行过程中被隐式锁定。

打开表时重新运行程序或查询。

If you get this error (-113) when using a transaction isolation mode of REPEATABLE READ or SERIALIZABLE, and if your query did not use an index(and therefore had to use a sequential scan of the entire table), the cause of the error might be that another user had either an exclusive lock or a promotable lock on at least one row in the table. If you are in REPEATABLE READ or SERIALIZABLE mode and your query requires a scan (search) of every single record in the table to find all the records that meet the conditions in the WHERE clause, then the engine will need to lock every record in the table to maintain the repeatability of the read. In practice, rather than locking every single record, the engine will try to lock the entire table.

But if there are any exclusive locks, or even promotable locks, on any row in the table, then the engine will not be able to get a shared lock on the entire table, and the query will fail.

如果在使用 REPEATABLE READ 或 SERIALIZABLE 的事务隔离模式时获得此错误(-113),而且如果您的查询没有使用索引(因此必须使用对整个表的顺序扫描),则导致该错误的原因可能是另一个用户在表中至少有一行的独占锁或可升级锁。如果您处于 REPEATABLEREAD 或 SERIALIZABLE 模式,并且您的查询需要扫描(搜索)表中的每个记录,以查找符合 WHERE 子句中条件的所有记录,则引擎将需要锁定表中的每个记录以保持读取的可重复性。实际上,引擎将尝试锁定整个表,而不是锁定每条记录,但是如果表中的任何行都有独占锁,甚至是可升级锁,则引擎将无法获得整个表上的共享锁,查询将失败。

-114 ISAM error: the file name is too long.

The ISAM processor has been asked to open or create a file with a filename longer than 10 characters. For C-ISAM programs, this length exceeds the maximum for the product. Choose a shorter filename. If the error recurs, note all circumstances and contact GBase Technical Support.

已要求 ISAM 处理器打开或创建具有文件名大于 10 个字符。对于 C-ISAM 程序,这个长度超过产品的最大值。选择一个更短的文件名。如果错误重现,注意所有情况,与 GBase技术支持部门联系。

-115 ISAM error: cannot create lock file.

The ISAM processor has been asked to access a file or row using locking. Because this operating system uses files for locking, ISAM must create a tablename.lok file. When it tried to do so, it received an error code from the operating system. The disk might be full, or your account might not have write permission in the relevant directory.

Look for operating-system error messages that might give more information.

ISAM 处理器已被要求使用锁定访问文件或行。由于此操作系统使用文件进行锁定,ISAM 必须创建一个 tablename.lok 文件。当它尝试这样做时,它从操作系统接收到一个错误代码。磁盘可能已满,或者您的账户可能在相关目录中没有写权限。请查找可能提供更多信息的操作系统错误消息。

-116 ISAM error: cannot allocate memory.

The ISAM processor needed to allocate memory for data storage but was unable to do so. A problem may exist in the operating system; look for operating-system error messages that might give more information. One cause of this error might be selecting a row that contains large BYTE or TEXT columns into a temporary table or as part of an INSERT or UPDATE. In some releases, an entire row that includes BLOB values is buffered in memory. For C-ISAM programs, review the program to look for ways that it can use less memory. For SQL products, simplify the program, form, or report if possible.

ISAM 处理器需要为数据存储分配内存,但无法这样做。操作系统中可能存在问题;请查找可能提供更多信息的操作系统错误消息。由于此错误,可能会在临时表中选择包含大型 BYTE 或 TEXT 列的行,或者作为 INSERT 或 UPDATE 的一部分。在某些版本中,包含 BLOB值的整个行在内存中被缓冲。对于 C-ISAM 程序,请检查该程序以寻找它可以使用较少内存的方法。对于SQL产品,如果可能,可以简化程序、表单或报表。

-117 ISAM error: bad custom collating sequence.

No current GBase 8s product displays this message. If the error recurs,note all circumstances and contact GBase Technical Support.

当前 GBase 8s 产品没有显示此消息。如果出现错误,请注意所有情况,并联系 GBase技术支持。

-118 ISAM error: cannot read log record.

The ISAM processor is trying to roll back a transaction or recover a file but has encountered an error while reading the transaction log.

Look for operating-system error messages that might give more information. Use the dblog or selog utility to get more information about the problem. If the file (table) cannot be recovered, you will have to re-create it or restore it from backup.

ISAM 处理器试图回滚事务或恢复文件,但在读取事务日志时遇到错误。查找可能提供更多信息的操作系统错误消息。使用 dblog 或 selog 实用程序可以获得有关问题的更多信息。

如果无法恢复文件(表),则必须重新创建它或从备份中恢复它。

-119 ISAM error: bad log record.

The ISAM processor is trying to roll back a transaction or recover a file but has encountered bad data in a transaction log record. The dblog or selog utility can be used to get more information about the problem. If the file (table) cannot be recovered, you will have to re-create it or restore it from backup.

ISAM 处理器试图回滚事务或恢复文件,但在事务日志记录中遇到了错误数据。可以使用 dblog 或 selog 实用程序来获取有关这个问题的更多信息。如果无法恢复该文件(表),则必须重建它或从备份中恢复它。

-120 ISAM error: cannot open log file.

The ISAM processor is trying to open the transaction log file but has received an error from the operating system. Look for operating-system error messages that might give more information. For C-ISAM programs,review the parameter passed to islogopen. Make sure that it specifies the correct filename of an existing, writable log file and that it includes a path if the file is not in the current directory. For SQL products, the START DATABASE statement establishes the transaction log file. Make sure that the log file still exists in the same directory location as when START DATABASE was issued and that your account has write access to it.

ISAM 处理器试图打开事务日志文件,但收到了操作系统的错误。寻找可能提供更多信息的操作-系统邮件。对于 C-ISAM 程序,检查传递给 islogopen 的参数。对于 SQL 产品,START DATABASE 语句建立事务日志文件。确保日志文件仍然存在于 START DATABASE发出时相同的目录位置,并且您的账户具有对它的写访问权限。

-121 ISAM error: cannot write log record.

The ISAM processor is trying to add a record to the transaction log but has received an error from the operating system. The disk might be full. Look for operating-system error messages that might give more information. The transaction-log file can grow quite large. To reduce its size, you must do two things. First, make a backup copy of the data file (for C-ISAM) or all database files (for SQL). Second, make the transaction-log file an empty file. If you perform these steps routinely, you can control the size of the log file.

ISAM 处理器正在尝试向事务日志添加记录,但是收到了操作系统的错误。磁盘可能已经满了。寻找可能提供更多信息的操作系统错误消息。事务日志文件可能会变得相当大。要缩小尺寸,你必须做两件事。首先,备份数据文件(用于 C-ISAM )或所有数据库文件(用于 SQL )。第二,将事务日志文件变为空文件。如果定期执行这些步骤,则可以控制日志文件的大小。

-122 ISAM error: transaction not available.

The ISAM processor has been asked to mark the start or end of a transaction, but transaction logging is not in effect. For C-ISAM programs, this file was not opened with logging. Review the calls to isopen, and make sure that the ISTRANS parameter is included. For SQL products, this database does not support transaction logging. If you are using the database server, have the database server administrator enable logging for this database. Otherwise, use the START DATABASE statement to begin transaction logging. In all cases, logging should only start immediately after the database has been fully backed up.

ISAM 处理器被要求标记事务的开始或结束,但是事务日志记录并不有效。对于 C-ISAM程序,此文件未使用日志打开。检查 isopen 的调用,并确保包含 ISTRANS 参数。对于SQL 产品,此数据库不支持事务日志记录。如果您正在使用数据库服务器,请让数据库服务器管理员为该数据库启用日志记录。否则,使用 START DATABASE 语句开始事务日志记录。在所有情况下,只有在数据库完全备份之后才能立即开始日志记录。

-123 ISAM error: no shared memory.

This implementation of ISAM uses shared memory; however, the shared-memory partition has not been established. Contact the system administrator or the person who installed the product.

ISAM 的这个实现使用共享内存;但是,这些内存分区尚未建立。与系统管理员或安装产品的人员联系。

-124 ISAM error: no begin work yet.

The ISAM processor has been asked to mark the end of a transaction, but no transaction has been started. For C-ISAM programs, review the program logic to make sure that it calls isbegin before it calls iscommit or isrollback. For SQL products, make sure that you execute BEGIN WORK before COMMIT WORK or ROLLBACK WORK.

ISAM 处理器被要求标记事务的结束,但没有启动任何事务。对于 C-ISAM 程序,请检查程序逻辑,以确保它在调用 iscommit 或 isrollback 之前调用 isbegin 。对于SQL 产品,请确保您在COMMIT WORK 或者 ROLLBACK WORK 之前执行了 BEGIN WORK。

-125 ISAM error: can't use nfs.

The ISAM processor has been asked to open a file that is located on a disk attached to another computer and that is accessed using the Network File System (NFS). This action is not supported. Database files must be on disks that are physically attached to the computer on which the ISAM processor is running. To use a database on a different computer, you must install the GBase 8s STAR or GBase 8s NET networking software. Then an application on this computer can communicate with a database server that is running on the computer to which the disks are attached.

ISAM 处理器被要求打开一个文件,该文件位于附加到另一台计算机的磁盘上,并且使用网络文件系统(NFS)访问。不支持此操作。数据库文件必须位于物理上连接到运行 ISAM处理器的计算机的磁盘上。要在不同的计算机上使用数据库,必须安装 GBase 8s STAR或 GBase 8s Net 网络软件。然后,此计算机上的应用程序可以与运行在磁盘连接的计算机上的数据库服务器通信。

-126 ISAM error: bad row id.

The ISAM processor was asked to retrieve a row by its physical location but could not find a row at that location.

ISAM 处理器被要求根据其物理位置检索一行,但在该位置找不到一行。

The error occurred due to one or more of the following reasons:发生此错误的原因有以下一个或多个原因:For queries using the dirty read isolation level, the data being queried was in a temporarily inconsistent state that prevented it from being read. This is normal behavior for the dirty read isolation level, which allows queries to access data that is being updated concurrently by other transactions. Resubmit the query. To prevent this error from occurring, use a higher isolation level.

对于使用脏读隔离级别的查询,所查询的数据处于暂时不一致状态,因此无法读取。这是脏读隔离级别的正常行为,允许查询访问其他事务并发更新的数据。重新提交查询。若要防止发生此错误,请使用更高的隔离级别。

For C-ISAM programs, if you are using access by record number, review the number stored in isrecnum; it is invalid. Otherwise, the current index might be damaged; run the bcheck or secheck utility.

对于 C-ISAM 程序,如果您使用的是记录号访问,请检查存储在 isrecnum 中的编号;它是无效的。否则,当前索引可能会损坏;运行 bcheck 或 secheck 实用程序。

For SQL products, the index has been damaged. Run the oncheck utility to check and repair the index if you are using GBase 8s Dynamic Server,GBase 8s Universal Server, or GBase 8s OnLine Dynamic Server. Run bcheck or secheck if you are using the GBase 8s SE database server. Run tbcheck if you are using the GBase 8s OnLine database server.

对于 SQL 产品,索引已经损坏。如果您使用的是 GBase 8s DynamicServer、GBase 8s UniversalServer 或 GBase 8s OnlineDynamicServer,则运行 oncheck 实用程序来检查和修复索引。如果您正在使用 GBase 8s SE数据库服务器,则运行 bcheck 或 secheck。

运行 tbcheck 如果您使用的是 GBase 8s 联机数据库服务器。

-127 ISAM error: no primary key.

The ISAM processor was called for a function that requires a unique primary-key index, but no such index exists for this file. For C-ISAM programs, review the design of the data file; it was created with a zero-part primary index (that is, for retrieval by record-number sequence). If that is not the case, the index might be damaged; run the bcheck or secheck utility. If the error recurs, note all circumstances and contact GBase Technical Support.

调用 ISAM 处理器的函数需要一个独特的主键索引,但该文件不存在这样的索引。对于 C-ISAM 程序,检查数据文件的设计;它是用零部分主索引创建的(也就是说,用于按记录编号顺序检索)。如果不是这样,索引可能会被破坏;运行 bcheck 或 secheck实用程序。如果错误再次发生,请注意所有情况,并与 GBase 技术支持部门联系。

-128 ISAM error: no logging.

The ISAM processor was called for a function that requires a transaction log, but none exists for this file. For C-ISAM programs,review the creation of the data file. Before the program uses functions such as isbegin, it must set up a log using islogopen. For SQL products, this database does not support transaction logging. If you are using the database server, have the database server administrator enable logging for this database. Otherwise, use the START DATABASE statement to begin transaction logging. In all cases, start logging only immediately after the database has been fully backed up.

调用 ISAM 处理器的函数需要事务日志,但此文件不存在。对于 C-ISAM 程序,请检查数据文件的创建。在程序使用诸如 isbegin 之类的函数之前,它必须使用 islogopen设置日志。对于 SQL 产品,此数据库不支持事务日志记录。如果您正在使用数据库服务器,请让数据库服务器管理员为该数据库启用日志记录。否则,使用 START DATABASE语句开始事务日志记录。在所有情况下,只在数据库完全备份之后才开始日志记录。

-129 ISAM error: too many users.

This implementation of ISAM uses shared memory, and it has reached the maximum number of concurrent users for which the shared memory was configured.

ISAM 的这个实现使用共享内存,并且它已经达到了配置共享内存的并发用户的最大数量。

The word users can be misleading; the limit is on the number of concurrent application programs using the database server. It is possible for one user to start multiple applications at the same time.

For example, when a user starts the GBase 8s 4GL Programmer's Environment, it opens a session with the database server. When that user issues a command to compile a 4GL program, the 4GL compiler starts and also opens a session with the database server. During a compile,this user has two sessions running.

用户这个词可能有误导性;限制使用数据库服务器的并发应用程序的数量。一个用户可以同时启动多个应用程序,例如,当用户启动 GBase 8s 4GL 程序员的环境时,它会打开一个与数据库服务器的会话。当该用户发出命令编译 4GL 程序时,4GL 编译器将启动并打开数据库服务器的会话。在编译期间,此用户有两个会话正在运行。

-130 ISAM error: no such dbspace.

This code indicates one of two problems. The most likely problem is that this operation specifies a dbspace by name (for example, in the IN clause of a CREATE TABLE statement or in the DBSPACETEMP environment variable setting), but that name has not been defined. You can run the onstat utility with the -d option to see the names of defined dbspaces.

Ask the database server administrator about creating a new dbspace.

此代码表示两个问题之一。最可能的问题是,此操作按名称指定 dbspace (例如,在CREATE TABLE 语句的 IN 子句或 DBSPACETEMP 环境变量设置中),但该名称尚未定义。您可以使用 -d 选项运行 onstat 实用程序,查看定义的 dbspace 的名称,询问数据库服务器管理员如何创建新的 dbspace。

If the operation does not explicitly name a dbspace, or if the name is correct, the problem might be more serious. The error might reflect corruption of reserved pages in the root dbspace. Use the tbcheck or oncheck utility with the -cr option to check for this condition.

如果操作没有显式地命名 dbspace,或者名称是正确的,那么问题可能更严重。此错误可能反映 root dbspace 中保留页的损坏。使用带有 -cr 选项的 tbcheck 或者 oncheck实用程序检查此条件。

-131 ISAM error: no free disk space.

Not enough contiguous free disk space is available to complete the current operation. For C-ISAM programs, if transaction logging is in use, roll back the current transaction. Make some disk space available,and run the program again. For SQL products, roll back the current transaction, if possible. Contact the system administrator about acquiring more disk space for databases.

没有足够的连续空闲磁盘空间来完成当前的操作。对于 C-ISAM 程序,如果事务日志正在使用,则回滚当前事务。使一些磁盘空间可用,并再次运行该程序。对于 SQL 产品,如果可能的话,回滚当前事务。请与系统管理员联系,以便为数据库获取更多磁盘空间。

-132 ISAM error: rowsize too big.

The limit on a single row is the disk page size that the database server supports.

单行的限制是数据库服务器支持的磁盘页大小。

Define the table differently, so that each row is shorter. Consider splitting the table into two or more tables or using more compact data types.

以不同的方式定义表,以便每行都更短。考虑将表拆分成两个或多个表,或者使用更紧凑的数据类型。

-133 ISAM error: audit trail exists.

The ISAM processor has been asked to operate on a file in a way that is incompatible with an audit trail, yet an audit trail exists for the file. For C-ISAM programs, you cannot call iscluster while an audit trail exists. First call isaudit with the AUDSTOP mode. For SQL products, you cannot create a clustered index on a table while it has an audit trail. First use the DROP AUDIT statement to drop the audit trail.

ISAM 处理器被要求以与审计跟踪不兼容的方式对文件进行操作,但是文件存在审计跟踪。对于 C-ISAM 程序,在审计跟踪存在时,不能调用 iscluster。使用 AUDSTOP 模式进行第一次调用。对于 SQL 产品,您不能在表上创建聚集索引,而不能在表上创建审计跟踪。首先,使用 DROP AUDIT 语句删除审计跟踪。

-134 ISAM error: no more locks.

The ISAM processor needs to lock a row or an index page, but no locks are available. The number of locks that an operation requires depends primarily on the number of rows that a single transaction modifies. You can reduce the number of locks that an operation needs by doing less in each transaction or by locking entire tables instead of locking rows.

Depending on the implementation that you are using, the number of locks that is available is configured in one of three places: the operating-system kernel, the shared-memory segment, or the database server. Consult your database server administrator about making more locks available.

ISAM 处理器需要锁定行或索引页,但没有可用的锁。一个操作所需的锁数与单个事务修改的行数密切相关。您可以通过在每个事务中执行更少的操作,或者通过锁定整个表而不是锁定行来减少操作所需的锁数。根据您正在使用的实现,可用的锁数量可以配置在三种位置之一:操作系统内核、共享内存段或数据库服务器。请咨询数据库服务器管理员,以便提供更多可用的锁。

-135 ISAM error: tblspace does not exist.

This error might indicate corruption of control information in the root dbspace, a serious problem that might require restoring the system from archive. In the short term, roll back the current transaction, and terminate the application. Then the database server administrator should run the tbcheck, oncheck, or onutil utility.

此错误可能表示 root dbspace 中的控制信息损坏,这是一个可能需要从 root dbspace恢复系统的严重问题。短期内,回滚当前事务,并终止应用程序。然后,数据库服务器管理员应该运行 tbcheck、oncheck 或 onutil 实用程序。

-136 ISAM error: no more extents.

The database server needs to add an extent to a table but cannot do so. Either not enough disk space is available in the dbspace, or the table has been given the maximum number of extents that is allowed, or the maximum number of pages has been reached. The database server administrator can determine the cause as follows:数据库服务器需要在表中添加一个 extent,但不能这样做。要么 dbspace 中没有足够的磁盘空间,要么给表提供了允许的最大 extent 数,或者达到了最大页数。数据库服务器管理员可以如下所示确定原因:1. Determine the tblspace number for the table. It is the value in the partnum column of the systables table for this table.

  1. 确定表的 tblspace 号。它是该表的收缩表的 partnum 列中的值。

  2. Convert the tblspace number to hexadecimal and extract its most-significant 2 digits (the high-order byte). This chunk number indicates where the table resides.

  3. 将 tblspace 数字转换为十六进制,并提取其最重要的 2 位数字(高阶字节)。

这个 chunk 号表示表的位置。

  1. Use the onstat utility -t option to find out disk usage for this table. Note particularly the values reported for npages (disk pages available), nused (disk pages used), and nextns (number of extents).

  2. 使用 onstat 实用程序 -t 选项查找此表的磁盘使用情况。特别注意 npage(可用磁盘页)、nuse(已使用磁盘页)和 nextns(extent 数)报告的值。

If nused is less than npages, and nextns is large, the table may have too many extents. The upper limit of extents per table depends on the page size of the dbspace it is in, as well as how much space is consumed by other entries on its tblspace page. An estimate of the maximum allowed number of extents is the page size in bytes, minus 150 bytes of overhead, divided by eight. Thus a table in a 2K page size dbspace is limited to roughly (2,048 - 150) / 8 = 237 extents, but the actual limit may be lower if other entries on its tblspace page reduce the space available for extent entries. Larger page sizes allow correspondingly higher numbers of extents.

如果 nused 小于 npages,并且 nextns 很大,表可能有太多的 extent。每个表的extent 上限取决于它所在的 dbspace 的页面大小,以及 tblspace 页面上的其他条目占用了多少空间。最大允许的 extent 数的估计值是页面大小(以字节为单位),减去150 字节的 foverhead ,除以 8。因此,2K 页大小的表 dbspace 被限制在大约(2,048-150)/8= 237 个 extent,但是如果 tblspace 页面上的其他条目减少了 extent条目的可用空间,那么实际的限制可能会更低。较大的页面大小允许相应的更多的extent 数。

If there are too many extents, reallocate the table using fewer, larger extents, or in a dbspace with a larger page size. To reallocate the table, unload it to a flat file, then drop the table. Re-create the table, specifying a first-extent size sufficient to hold all its current data and a next-extent size between one-fourth and one-sixteenth its current size. Then reload the data into the table.

如果有太多的 extent,可以使用更少、更大的 extent 重新分配表,或者在页大小更大的 dbspace 中重新分配表。若要重新分配表,请将其卸载到平面文件中,然后删除该表。重新创建表,指定一个足以保存其所有当前数据的第一个 extent 大小,以及一个介于其当前大小的四分之一到十六分之一之间的下一个 extent 大小。然后将数据重新加载到表中。

If nextns is small or the difference between npages and nused is less than the size of the next-extent size for the table, not enough disk space is available in the dbspace where the table resides. Use the chunk number from step 2 and the ON-Monitor or ON-Monitor Chunks display to determine the dbspace, then add a new chunk to that dbspace.

如果 nextns 很小,或者 npages 和 nused 之间的差异小于表的下一个 extent 大小的大小,那么在表所在的 dbspace 中没有足够的磁盘空间可用。使用步骤 2 中的 chunk号和 ON-Monitor 或 ON-Monitor chunk 显示来确定 dbspace,然后向该 dbspace添加一个新 chunk。

If nused is close to 0xFFFFFF (16,777,215), the maximum number of pages has been reached for the table. Reallocate the table in a dbspace with a larger page size as described above.

如果 nused 接近 0xFFFFFF (16,777,215), 则表的最大页数已经达到。如上文所述,在 dbspace 中重新分配表的页面大小更大。

-137 ISAM error: chunk table overflow.

The database system administrator sees this error message. The database server is configured to handle a certain number of disk chunks. The limit has been reached, so a chunk could not be added. Increase the CHUNKS parameter of the ONCONFIG file, and initialize shared memory.

数据库系统管理员看到此错误消息。数据库服务器被配置为处理一定数量的磁盘 chunk。已经到达了极限,所以无法添加 chunk。增加 ONCONFIG 文件的 CHUNKS 参数,并初始化共享内存。

-138 ISAM error: dbspace table overflow.

The database server administrator sees this error message. The database server is configured to handle a certain number of dbspaces. The limit has been reached, so a dbspace could not be added. Increase the DBSPACES parameter of the ONCONFIG file, and initialize shared memory.

数据库系统管理员看到此错误消息。数据库服务器被配置为处理一定数量的磁盘 chunk。

已经到达了限制,所以无法添加 chunk。增加 ONCONFIG 文件的 CHUNKS 参数,并初始化共享内存。

-139 ISAM error: logfile table overflow.

The database server administrator sees this error. The database server is configured to handle a certain number of logical logs. The limit has been reached, so a log could not be added. Increase the LOGSMAX parameter of the ONCONFIG file and initialize shared memory.

数据库服务器管理员看到此错误。数据库服务器被配置为处理一定数量的逻辑日志。限制已经达到,因此无法添加日志。增加 ONCONFIG 文件的 LOGSMAX 参数并初始化共享内存。

-140 ISAM error: operation illegal on a DR secondary.

UPDATABLE_SECONDARY disabled:UPDATABLE_SECONDARY 被禁用:A DR secondary server is meant for read-only operations. Any kind of write operation to a nontemporary dbspace is not allowed. For example, you cannot create a table in a regular dbspace, and you cannot do an insert, update, or delete operation on a table in a regular dbspace.

DR 辅助服务器用于只读操作。不允许对非临时 dbspace 进行任何类型的写操作。例如,不能在常规 dbspace 中创建表,并且不能对常规 dbspace 中的表执行 INSERT、UPDATE 或DELETE 操作。

Review your application logic and rewrite it to remove any operations that would write to a nontemporary dbspace.

查看您的应用程序逻辑并重写它它,以删除任何写入非临时 dbspace 的操作。

UPDATABLE_SECONDARY enabled:UPDATABLE_SECONDARY 已启用:A DR secondary server is updatable. Some of the DML/DDL statements are not supported on an updatable secondary server. For example, create database without log is not supported on an updatable secondary server. Also raw tables and external tables creation are also not supported on secondary server.

DR 辅助服务器是可更新的。在可更新的辅助服务器上不支持某些 DML/DDL 语句。例如,在可更新的辅助服务器上不支持创建没有日志的数据库。此外,辅助服务器也不支持创建裸表和外部表。

All secondary servers:所有的辅助服务器:Certain operations on the secondary servers require temporary data to be stored in temporary dbspaces, such as sorting and view processing. Ensure that temporary dbspaces are available for such operations.

辅助服务器上的某些操作要求临时数据是存储临时 dbspace,例如排序和视图处理。确保临时 dbspace 可用于此类操作。

-141 ISAM error: tblspace table overflow.

The database server is configured to handle a certain number of open tblspaces (which correspond approximately to tables). This limit has been reached, so a table that is used in this statement could not be opened. In the short term, roll back the current transaction and then re-execute it when fewer concurrent operations are going on. To prevent recurrence, the database server administrator should configure the system to handle more open tblspaces. The TBLSPACES parameter of the ONCONFIG file sets the limit. The ovrtable count in the ON-Monitor or ON-Monitor Profile display reflects the number of times this error occurs.

数据库服务器被配置为处理一定数量的打开的 tblspace (这些空间与表大致对应)。

已经达到这个限制,因此不能打开此语句中使用的表。短期内,回滚当前事务,然后在并发操作减少时重新执行它。数据库服务器管理员应该配置系统以处理更多开放的tblspace。ONCONFIG 文件的 TBLSPACES 参数设置限制。显示器或监视器配置文件显示中的可变计数反映了发生此错误的次数。

-142 ISAM error: overflow of tblspace page.

An internal error (probably obsolete) occurred. If the error recurs,note all circumstances and contact GBase Technical Support.

发生了内部错误(可能过时)。如果错误再次发生,请注意所有情况,并与 GBase 技术支持部门联系。

-143 ISAM error: deadlock detected.

The database server has detected an impending deadlock between your request and other, concurrent user requests. Each user request is waiting for a resource (a row or disk page) that is held by another request in the chain; if your requested operation went forward, the chain would be closed and all requests would be deadlocked. In the short term, treat this error the same as -107 (record is locked). Roll back the current transaction, and re-execute it after a delay. To prevent recurrence, review the design of the applications that use the same tables and execute concurrently. Various design strategies can minimize the probability of deadlock.

数据库服务器检测到请求与其他并发用户请求之间即将出现死锁。每个用户请求都在等待由链中的另一个请求持有的资源(行或磁盘页);如果请求的操作向前推进,将关闭该链,所有请求都将陷入僵局。短期内,将此错误处理为 -107(记录被锁定)。回滚当前事务,并在延迟后重新执行。为了防止重复出现,请检查使用相同表并发执行的应用程序的设计。不同的设计策略可以最小化死锁发生的概率。

When GBase 8s STAR is active, and your application is using tables in both this system and another system, deadlock detection is no longer deterministic but probabilistic, based on the duration of a delay waiting for resources in another system. The database server administrator can set the length of the delay after which deadlock is assumed.

当 GBase 8s STAR 处于活动状态,并且您的应用程序同时在此系统和另一个系统中使用表时,死锁检测不再是更长的确定性,而是基于在另一个系统中等待资源的延迟时间的概率。数据库服务器管理员可以设置假定死锁发生后的延迟长度。

-144 ISAM error: key value locked.

The current operation inserts a row with a certain primary key value or updates a row with a certain primary key value, but a transaction that has not yet been committed has deleted that key value from the index.

This error occurs only when the lock mode is set to NOT WAIT. Treat it the same as error -107 (record is locked). Roll back the current transaction, and re-execute it after a delay. Then, if the other transaction was committed, the lock no longer exists. If it was rolled back, the key exists, and this operation receives a duplicate-key error.

当前操作插入具有特定主键值的行或用特定主键值更新行,但尚未提交的事务已从索引中删除该键值。只有当锁定模式设置为“NOT WAIT”时,才会发生此错误。将其视为错误-107(记录被锁定)。回滚当前事务,并在延迟后重新执行。然后,如果提交了另一个事务,则锁不再存在。如果将其回滚,则存在密钥,此操作将收到一个重复键错误.

-145 ISAM error: system does not have disk mirroring.

The database server administrator sees this error. This database server has not been initialized to support disk mirroring. Before you can add a mirror chunk, you must reconfigure the database server to support mirroring.

数据库服务器管理员看到此错误。此数据库服务器尚未初始化以支持磁盘镜像。在添加镜像 chunk 之前,必须重新配置数据库服务器以支持镜像。

-146 ISAM error: the other copy of this disk is currently disabled or non-existent.

The database server administrator sees this error. You must bring the other chunk of this mirror pair to online status before you can take this chunk off line.

数据库服务器管理员看到此错误。您必须将此镜像对的其他 chunk 放到联机状态,然后才能将此 chunk 从线上删除。

-147 ISAM error: archive in progress.

The database server administrator sees this error. The action that you have requested cannot be carried out while an archive is being made. For example, you cannot add a log or a mirror during archiving. Cancel the archive or wait until it is complete, and then reissue the command.

数据库服务器管理员看到此错误。您所要求的操作无法在存档时执行。例如,您不能在归档期间添加日志或镜像。取消存档或等待它完成,然后重新发出命令。

-148 ISAM error: dbspace is not empty.

The database server administrator sees this error. You cannot remove a dbspace until all tables that are in it have been dropped. To find the names of remaining tables, use the tbcheck or oncheck utility with the -pe option; its report lists tables by chunk within dbspaces.

数据库服务器管理员看到此错误。在删除 dbspace 中的所有表之前,不能删除 dbspace 。

若要查找其余表的名称,请使用 tbcheck 或 oncheck 实用程序和 -pe 选项;其报表按 chunk 列出 dbspace 中的表。

-149 ISAM error: GBase 8s OnLine daemon is no longer running.

Your application was in communication with the database server, but the database server is no longer running. Your current transaction will be rolled back when the database server goes through fast recovery as it next starts up. Terminate the application, and contact the database server administrator to find out what happened and when the database server will be restarted.

您的应用程序正在与数据库服务器通信,但数据库服务器已不再运行。当数据库服务器在下一次启动时进行快速恢复时,您的当前事务将被回滚。终止应用程序,并与数据库服务器管理员联系,以了解发生了什么以及何时将重新启动数据库服务器。

-150 The limits of the GBase 8s Demo Version have been exceeded.

You are using a demonstration version of the database server. This version has severe limits on the number of tables and the size of the tables that it can manage. The current operation causes it to exceed one of those limits. Contact your GBase representative about buying the production version of the software.

您正在使用数据库服务器的演示版本。此版本对表的数量和可以管理的表的大小有严格的限制。当前的操作使其超出其中一个限制。有关购买该软件的生产版本,请与您的GBase 代表联系。

-151 ISAM error: Illegal value in varchar length field.

This internal error occurs when the leading byte in a VARCHAR column on disk indicates a VARCHAR length greater than the column was defined to hold when the column was created.

当磁盘上的 VARCHAR 列中的前导字节指示在创建该列时定义的 VARCHAR 长度大于该列时,则会发生此内部错误。

If the error recurs, refer to the information on trapping errors in your Administrator's Guide or Reference. To acquire additional diagnostics,contact GBase Technical Support with the diagnostic information.

如果再次出现错误,请参考“管理员指南”或“引用”中有关捕获错误的信息。要获得其他诊断信息,请与 GBase 技术支持部门联系,提供诊断信息。

-152 ISAM error: Illegal message type received from remote process.

This internal error should not occur. Note all the details about the network software in use and the version level of the database servers in this and the other host system. If the error recurs, note all circumstances and contact GBase Technical Support.

不应发生此内部错误。请注意有关正在使用的网络软件的所有详细信息,以及此系统和其他主机系统中数据库服务器的版本级别。如果错误再次发生,请注意所有情况,并与GBase 技术支持部门联系。

-153 ISAM error: not in ISMANULOCK mode.

The ISAM processor has been asked to lock or unlock the current file(table), but the file was not opened in the appropriate mode. For C-ISAM programs, review the uses of isopen, and make sure that the ISMANULOCK flag is passed when the program opens a table for manual locking. If the error recurs, note all circumstances and contact GBase Technical Support.

ISAM 处理器已被要求锁定或解锁当前文件(表),但该文件没有以适当的模式打开。对于C-ISAM 程序,请检查 isopen 的用法,并确保在程序打开用于手动锁定的表时传递ISMANULOCK 标志。如果错误再次发生,请注意所有情况,并与 GBase 技术支持部门联系。

-154 ISAM error: Lock Timeout Expired.

This network operation has been suspended, awaiting a response from another database server, for the maximum duration allowed. The local database server assumes that a distributed deadlock exists and that this user request is awaiting a resource that was locked by a user in a different system, which is awaiting a resource that this user owns.

Roll back the current transaction, and retry it after a delay. If this error occurs frequently, ask the database server administrator to adjust the length of the deadlock time-out interval.

此网络操作已被挂起,等待另一个数据库服务器的响应,达到允许的最长期限。本地数据库服务器假定存在分布式死锁,并且此用户请求正在等待另一个系统中的用户锁定的资源,该资源正在等待该用户拥有的资源。回滚当前事务,并在延迟后重试。如果此错误经常发生,请数据库服务器管理员调整死锁超时间隔的长度。

This code is also returned when an explicit wait time limit expires;that is, if you have SET LOCK MODE TO WAIT 3, and your request is queued for more than 3 seconds for a lock, the operation ends with this ISAM error code.

当显式等待时间限制到期时,也会返回此代码;也就是说,如果您已设置为 SET LOCK MODE TO WAIT 3,并且请求排队超过 3 秒,则操作以此 ISAM 错误代码结束。

-155 ISAM error: Primary and Mirror chunks are bad.

The primary chunk (and the mirror chunk, if one exists) are unusable.

Roll back the current transaction and terminate the application.

Contact the database server administrator. New disk chunks must be defined, and then the system must be restored.

主 chunk(如果存在镜像 chunk)是不可用的。回滚当前事务并终止应用程序。与数据库服务器管理员联系。必须定义新的磁盘 chunk,然后必须还原系统。

-156 ISAM error: Cannot attach to shared memory.

Unable to attach to shared memory. Look for operating-system messages that might give more information. After you verify that no system limit or local problem exists, note all circumstances and contact GBase Technical Support.

无法附加到共享内存。寻找可能提供更多信息的操作系统消息。确认系统限制或本地问题不存在后,请注意所有情况并与 GBase 技术支持部门联系。

-157 ISAM error: Interrupted ISAM call.

An interrupt that was detected from client process has terminated the operation. Restart the operation.

从客户端进程检测到的中断已终止操作。重新启动操作。

-158 ISAM error: Operation disallowed on SMI pseudo table.

You have attempted an SQL operation that is not supported on System Monitoring Interface (SMI) pseudo tables. Try another operation.

您尝试过在系统监视接口(SMI)伪表中不支持的 SQL 操作。再做一次操作。

-159 ISAM error: Collation sequence invalid.

You are attempting to use a collation sequence that is either not supported or does not match the sequence originally used to create the ISAM file. Use islanginfo() to determine the language of the ISAM file.

您正在尝试使用不支持的排序规则序列或与最初用于创建 ISAM 文件的序列不匹配的排序规则序列。使用 islanginfo() 确定 ISAM 文件的语言。

-160 ISAM error: only one TEXT or BYTE field may be open at any time.

This internal error should not occur. The database server has called the isbopen function twice in a row. If the error recurs,note all circumstances and contact GBase Technical Support.

不应发生此内部错误。数据库服务器连续两次调用 isbopen 函数。如果错误再次发生,请注意所有情况,并与 GBase 技术支持部门联系。

-161 ISAM error: no TEXT or BYTE field is open.

This internal error should not occur. The database server has called a TEXT or BYTE function without first calling isbopen. If the error recurs, note all circumstances and contact GBase Technical Support.

不应发生此内部错误。数据库服务器调用文本或字节函数,而不首先调用 isbopen。如果错误再次发生,请注意所有情况,并与 GBase 技术支持部门联系。

-162 ISAM error: Storage space does not exist.

The most likely cause of this error is that the current statement attempts to define a BYTE or TEXT column using the clause IN blobspace,but no storage space of that name has been defined. However, if the storage space was correctly spelled and should exist, a reserved page in the root dbspace might have been corrupted. In that case, the database server administrator should run tbcheck -cr, oncheck -cr, or onutil to check the situation. If the statement makes no reference to TEXT or BYTE columns, possibly the root dbspace is full or corrupted; contact the database server administrator for further help.

造成此错误的最可能原因是,当前语句试图使用 IN blobspace 子句定义 BYTE 或 TEXT 列,但没有定义该名称的存储空间。但是,如果存储空间拼写正确并应该存在,则 root dbspace中的保留页可能已损坏。在这种情况下,数据库服务器管理员应该运行 tbcheck -cr、oncheck-cr 或 onutil 来检查情况。如果语句不引用 TEXT 或 BYTE 列,则 root dbspace可能已满或损坏;请与数据库服务器管理员联系以获得进一步帮助。

-163 ISAM error: begin and end page stamps are different.

The database server is reporting evidence of corruption of the database. Each disk page has time stamps at each end that should be identical when the page is read from disk. This test of data integrity has failed, indicating either that a disk page was not fully written to disk or that one has been partially overwritten on disk or in memory.

In any case, you should roll back the current transaction and terminate the application. Then notify the database server administrator, who should run the tbcheck, oncheck, or onutil utility to get more information about the failure.

数据库服务器正在报告数据库损坏的证据。每个磁盘页的两端都有时间戳,当从磁盘读取页时,时间戳应该是相同的。此数据完整性测试失败,表明磁盘页未完全写入磁盘,或已部分覆盖磁盘或内存中。在任何情况下,您都应该回滚当前事务并终止应用程序。然后通知数据库服务器管理员,谁应该运行 tbcheck、oncheck 或 onutil 实用程序来获取有关故障的更多信息。

-164 ISAM error: TEXT or BYTE stamp is incorrect.

This operation has returned an invalid BYTE or TEXT value. Possibly the data pages have been corrupted. Roll back the current transaction. Have the database server administrator use tbcheck -D, oncheck -D, or onutil to get more information about the problem.

此操作返回了一个无效的 BYTE 或 TEXT 值。数据页可能已损坏。回滚当前事务。让数据库服务器管理员使用 tbcheck -D、oncheck -D 或 onutil 获取有关问题的更多信息。

If the program is operating with Dirty Read or Committed Read isolation, this code might indicate that another process or thread has deleted the BYTE or TEXT value and its pages have been partly reallocated to an unrelated value. A program using Dirty Read isolation can read rows that have been deleted if the deletion has not yet been committed. If the deletion is committed while the program is reading a BYTE or TEXT value, and if the space allocated to the value is reused for some other program, this error code might be returned.

如果程序运行时使用的是脏读或提交读隔离,则此代码可能指示另一个进程或线程删除了BYTE 或 TEXT 值,其页已部分重新分配到一个无关的值。使用脏读隔离的程序可以读取删除尚未提交的已删除的行。如果在程序读取字节或文本值时提交了删除,如果分配给该值的空间被重用用于其他程序,则可能会返回此错误代码。

When a program uses Committed Read isolation, it does not see a row that has been marked for deletion; however, no lock is placed on a row that is not read for update. BYTE or TEXT data is read in a second step, after the row has been fetched. During this lengthy step, it is possible for another program to delete the row and commit the deletion and for the storage space to be reused. To determine if this has occurred,the program should stop processing the BYTE or TEXT value and reread the row. If the program can no longer read the other fields in the row, the row has been deleted. If the program can still read the row,the storage space is corrupted.

当程序使用已提交的读隔离时,它不会看到已标记为删除的行;但是,不会对未读取以进行更新的行设置任何锁。在获取行之后,第二步读取 BYTE 或 TEXT 数据。在这个漫长的步骤中,另一个程序可以删除该行并提交删除,并且可以重用存储空间。若要确定是否发生这种情况,程序应停止处理字节或文本值并重新读取行。如果程序无法再读取行中的其他字段,则行已被删除。如果程序仍然可以读取行,则存储空间已损坏。

-165 ISAM error: TEXT or BYTE column does not exist.

This internal error should not occur. The database server has called the isbcreate function for a table column that is not defined as BYTE or TEXT. If the error recurs, note all circumstances and contact GBase Technical Support.

不应发生此内部错误。数据库服务器为未定义为 BYTE 或 TEXT 的表列调用 isbcreate函数。如果错误再次发生,请注意所有情况,并与 GBase 技术支持部门联系。

-166 ISAM error: Storage space is full.

This operation attempts to insert or update the value of a BYTE or TEXT column, but not enough space is available in the storage space in which that column is stored. Roll back the current transaction, and terminate the application. Then ask the database server administrator to add a chunk of disk space to this storage space.

此操作尝试插入或更新 BYTE 或 TEXT 列的值,但存储该列的存储空间中没有足够的空间。回滚当前事务,并终止应用程序。然后请数据库服务器管理员向此存储空间添加一chunk 磁盘空间。

When BYTE and TEXT values are deleted or replaced, the pages that they occupy in the storage space do not become available for reuse until the logical log in which that transaction appears has been freed. A logical log has been freed if the log is backed up to tape and all transactions in the log are closed.

当 BYTE 和 TEXT 值被删除或替换时,它们在存储空间中占用的页面在释放该事务所在的逻辑日志之前无法重用。如果将日志备份到磁带并关闭日志中的所有事务,则逻辑日志已被释放。

-167 ISAM error: Storage-space size is not multiple of PAGESIZE.

The database server administrator sees this error. When you define a storage space, you must specify a page size that is an integral multiple of the system page size. The system page size is set in the Parameters screen when the database server is first initialized.

数据库服务器管理员看到此错误。定义存储空间时,必须指定页大小的整数倍数。当数据库服务器第一次初始化时,系统页大小将在参数屏幕中设置。

-168 ISAM error: archive is blocking storage space allocation.

Allocation of disk pages in a storage space is frozen while an online archive is being made. Therefore, pages that contain TEXT or BYTE data at the time that the archive began are not freed and overwritten by new pages before they can be written to the archive tape. As soon as all the used pages in the chunk are archived, allocation in that chunk can resume. Normal row data can go on changing while the archive is being made because changed dbspace pages can be written, or rewritten, on the tape at any point.

存储空间中磁盘页的分配将被冻结,而在线存档正在进行。因此,在存档开始时包含TEXT 或 BYTE 数据的页面在写入存档磁带之前不会被新页释放和覆盖。一旦数据 chunk中所有使用的页面都被归档,就可以恢复在该 chunk 中的分配。由于更改后的 dbspace页可以随时在磁带上写入或重写,所以在归档过程中,通常的行数据可以继续更改。

-169 ISAM error: Pages for TEXT or BYTE data can't be allocated from a chunk until chunk add is logged.

When a storage space containing TEXT or BYTE data has been extended by adding a new chunk, no pages can be allocated until the log record showing the addition of the chunk has been logged. If this rule were not enforced, certain anomalies could occur during recovery. You do not have to wait until the log is full; you can run the tbmode or onmode utility with the -l option to force a switch to the next log.

当通过添加新 chunk 扩展包含 TEXT 或 BYTE 数据的存储空间时,在记录显示添加chunk 的日志记录之前,不能分配页面。如果不执行这一规则,在恢复过程中可能会出现某些异常现象。您不必等待日志已满;您可以使用 -l 选项运行 tbmode 或 onmode实用程序,以强制切换到下一个日志。

-170 ISAM error: illegal use of a storage space for TEXT or BYTE data.

You attempted to add a log to a storage space for TEXT or BYTE data.

You can add logs only to dbspaces.

尝试将日志添加到 TEXT 或 BYTE 数据的存储空间。只能向 dbspace 添加日志。

-171 ISAM error: ISAM file format change detected.

A program that uses a particular locking method or index-node size has attempted to access an ISAM file that was created using a different locking method or index-node size.

使用特定锁定方法或索引节点大小的程序试图访问使用不同锁定方法或索引节点大小创建的 ISAM 文件。

If you are migrating files from a platform that uses another index-node size, you must run the bcheck or secheck utility with the -s option against all of the ISAM files (.dat and .idx) to resize the index nodes.

如果要从使用另一个索引节点大小的平台迁移文件,则必须针对所有 ISAM 文件(.dat和 .idx )运行 bcheck 或 sechek 实用程序和 -s 选项,以调整索引节点的大小。

For GBase 8s SE, if you are migrating applications between platforms that use different locking methods, you must set the environment variable RESETLOCK to convert ISAM files as you access them. You can access all files for a given database by running UPDATE STATISTICS in that database, if time permits.

对于 GBase 8s SE,如果要在使用不同锁定方法的平台之间迁移应用程序,则必须在访问ISAM 文件时设置环境变量 RESETLOCK 以转换 ISAM 文件。如果时间允许,您可以在数据库中运行 UPDATE STATISTICS 来访问给定数据库的所有文件。

For C-ISAM applications, if you are migrating applications between platforms that use different locking methods, you must set the environment variable RESETLOCK to convert C-ISAM files as you access them.

对于 C-ISAM 应用程序,如果要在使用不同锁定方法的平台之间迁移应用程序,则必须在访问 C-ISAM 文件时设置环境变量 RESETLOCK 以转换 C-ISAM 文件。

-172 ISAM error: Unexpected internal error.

You encountered an unanticipated internal event. Consult the online.log to see if the diagnostics preserved any additional information regarding this event. If the error recurs, refer to your Administrator's Guide to acquire additional diagnostics. Contact GBase Technical Support with the diagnostic information.

你遇到了一个意想不到的内部事件。查阅 online.log ,看看诊断是否保存了有关此事件的任何其他信息。如果出现错误,请参考管理员指南获取其他诊断信息。请与 GBase 技术支持部门联系,了解诊断信息。

-173 ISAM error: An error has occurred during logical log back up.

This generic message indicates that the logical-log backup has failed.

The SQL API also contains useful error text that is associated with this error.

此一般消息表示逻辑日志备份失败。SQL API 还包含与此错误关联的有用错误文本。

-174 ISAM error: An error has occurred during archive back up.

This generic message indicates that the archive backup has failed. The SQL API also contains useful error text that is associated with this error.

此一般消息表示存档备份失败。SQL API还包含与此错误关联的有用错误文本。

-175 ISAM error: Cannot get lock while holding a buffer.

This message indicates an internal error when attempting to lock a row while holding a buffer. The database server will attempt to retry the operation.

此消息表示在保存缓冲区时试图锁定行时出现内部错误。数据库服务器将尝试重试该操作。

-176 ISAM error: An error has occurred during physical restore.

This generic message indicates that the physical restore has failed.

The SQL API also contains useful error text that is associated with this error.

此一般消息表示物理还原失败。SQL API 还包含与此错误关联的有用错误文本。

-177 ISAM error: An error has occurred during logical restore.

This generic error indicates that the logical restore has failed. The SQL API also contains useful error text that is associated with this error.

此一般错误表示逻辑还原失败。SQL API 还包含与此错误关联的有用错误文本。

-178 ISAM error: Database is locked; pending change to logging mode.

A request has been made to change the logging status of a database.

Until a level-0 archive is done for all the storage spaces that the database uses, access to the database is blocked.

请求更改数据库的日志记录状态。在对数据库使用的所有存储空间完成级别 -0 存档之前,对数据库的访问将被阻止。

-179 ISAM error: No free disk space for sort.

While performing a sort, the database server did not find enough contiguous free disk space to create necessary temporary files. You might have insufficient disk space and need to make more disk space available before you run the program again. You might have made an error when you specified the names of temporary dbspaces in DBSPACETEMP or directory names in PSORT_DBTEMP. Check the spelling of your temporary space names as specified in DBSPACETEMP. If you specified multiple temporary dbspaces, check that you used colons (:) or commas(,) as delimiters.

在执行排序时,数据库服务器找不到足够的连续空闲磁盘空间来创建必要的临时文件。在再次运行程序之前,您可能没有足够的磁盘空间,并且需要提供更多的磁盘空间。当您在 DBSPACETEMP 中指定临时 dbspace 的名称或在 PSORT_DBTEMP 中指定目录名时,可能会出错。检查 DBSPACETEMP 中指定的临时空间名的拼写。如果指定了多个临时 dbspace ,请检查是否使用冒号(:)或逗号(,)作为分隔符。

-181 ISAM error: No Optical Subsystem connection.

The Optical subsystem is not present. This message usually means that you requested an Optical operation on a database server that is being used without the Optical subsystem or GBase 8s OnLine/Optical.

光学子系统不存在。此消息通常意味着您请求在没有光学子系统或 GBase 8s OnLine/Optical 的情况下使用的数据库服务器上进行光学操作。

-182 ISAM error: Duplicate optical BLOBSpace name.

A storage space for TEXT or BYTE data has been defined with the same name as an Optical family name.

TEXT 或 BYTE 数据的存储空间已经定义为与光学家族名称相同的名称。

-183 ISAM error: DDR log post processing is already active.

This message indicates an internal error when attempting to start DDR log post processing when it is already active.

此消息表示当 DDR 日志已处于活动状态时尝试启动 DDR 日志后处理时出现内部错误。

-185 ISAM error: DDR log post processing is not active.

This message indicates that ER is down.

此消息指示 ER 已停机。

-186 ISAM error: Cannot open partition. Online create/drop index in progress.

The current operation is trying to open a partition on which a online create/drop index is in progress. Wait a short time, and try again.

当前操作试图打开一个正在进行联机创建/删除索引的分区。等一会儿,再试一次。

-187 ISAM error: User Defined Routine execution failed.

A user-defined routine (UDR) failed to execute properly. Typically, this occurs when the UDR raises an error.

用户定义例程(UDR)无法正确执行.通常,当 UDR 引发错误时会发生这种情况。

For more specific information, see the message log.

有关更多具体信息,请参见消息日志。

-188 ISAM error: Cannot add transaction logging on a DR primary with DR on.

Transaction logging cannot be added to a database on the primary database server of a data replication (DR) pair while DR is in use.

DR has to be turned off for transaction logging to be added.

在使用 DR 时,不能将事务日志添加到数据复制(DR)对的主数据库服务器上的数据库中。必须关闭 DR 才能添加事务日志记录。

Adding transaction logging to a database after turning DR off requires bringing up the DR pair again through a level-0 archive on the primary database server and its physical restore on the secondary database server. Restarting DR is necessary to avoid DR failures due to inconsistencies between the primary and secondary database servers,caused by the addition of transaction logging.

在关闭 DR 之后,将事务日志添加到数据库中,需要通过主数据库服务器上的 0 级存档以及辅助数据库服务器上的物理恢复再次打开 DR 对。重新启动 DR 是必要的,以避免由于主数据库服务器和辅助数据库服务器之间的不一致而导致 DR 失败,这是由于添加了事务日志记录。

-190 ISAM error: Transaction table overflow.

No more slots are available in the transaction table. To see this table, run onstat with the -x option.

事务表中没有更多的插槽可用。要查看此表,请使用 -x 选项运行 onstat 。

-191 ISAM error: No such chunk.

The chunk that was specified to be dropped does not exist.

指定要删除的 chunk 不存在。

-192 ISAM error: Cannot drop first chunk.

The first chunk of a storage space is never a candidate to be dropped. Select a different chunk.

存储空间的第一个 chunk 从来不是要删除的候选 chunk 。选择不同的 chunk 。

-193 ISAM error: Chunk is busy.

Logical recovery cannot roll forward a chunk add because the chunk already exists. This error results when the chunk is dropped from a storage space, or the space is dropped, and the chunk is reused for another storage space without a level-0 backup performed first.

逻辑恢复不能前滚 chunk 添加,因为 chunk 已经存在。当数据 chunk 从存储空间中删除,或者空间被删除,并且在没有首先执行级别 -0 备份的情况下,chunk 被重用到另一个存储空间时,就会产生此错误。

-194 ISAM error: Chunk not empty.

A chunk is not empty and therefore cannot be dropped.

chunk 不是空的,因此不能删除。

-195 ISAM error: No miscellaneous vp.

This message indicates that no VP exists for miscellaneous VP class.

此消息表示杂项 VP 类不存在 VP 。

-196 ISAM error: Operation not allowed in temporary dbspace.

An operation was executed on a temporary dbspace that required functionality that temporary dbspaces do not provide (most likely logging). Use a nontemporary dbspace for this operation.

在临时 dbspace 上执行操作,该 dbspace 需要临时 dbspace 不提供的功能(很可能是日志记录)。对此操作使用非临时 dbspace。

-197 ISAM error: Cannot open a recently appended logged partition for writing.

A level-0 backup is needed before you can write to the target database.

If this error recurs after a level-0 backup, note all circumstances and contact GBase Technical Support.

在写入目标数据库之前,需要进行 0 级备份。如果在 0 级备份后再次出现此错误,请注意所有情况,并与 GBase 技术支持部门联系。

-198 Cannot alter table. Too many in-place alters of the table in progress.

GBase 8s limits the number of outstanding in-place ALTER TABLE requests to 255. A 256th in-place alter of a table was requested before the completion of the first in-place alter. Completion means that all rows of the table in the first in-place alter have been physically altered.

GBase 8s 将未完成的 ALTER TABLE 请求的数量限制在 255。在完成第一个定点更改之前,请求对表进行第 256 次定点更改。补全意味着第一个定点更改的表的所有行都已被物理更改。

To recover from this error, you must take one of the following steps:要从该错误中恢复,必须采取以下步骤之一:* Wait until the first in-place alter is complete, and issue another in-place ALTER TABLE statement.

* 等待第一个定点更改完成,并发出另一个定点 ALTER TABLE 语句。

* Change the format of the ALTER TABLE statement to request an alter that does not add columns to the end of the table. Such a statement will use the older algorithm instead of the in-place alter algorithm.

* 更改 ALTER TABLE 语句的格式,以请求不向表末尾添加列的更改。这样的语句将使用较旧的算法,而不是定点更改的算法。

* Perform an update of each row in the table to force the outstanding alters to complete. Because rows are only modified to the latest schema as they are updated, the only way to force an in-place alter to complete physically is to update each row in the table. To accomplish this result, use a dummy update in which a column in the table is set to its own value. The dummy update forces the row to be updated to the latest schema in the process without actually changing column values. Rows are always altered to the latest schema, so a single pass through the table that updates all rows will complete all outstanding in-place alters.

* 对表中的每一行执行更新,以强制未完成的更改完成。由于行在更新时仅被修改为最新的架构,因此强制定点更改物理完成的唯一方法是更新表中的每一行。要完成此结果,请使用虚拟更新,其中表中的列设置为其自身的值。虚拟更新强制将行更新到进程中的最新架构,而不实际更改列值。行总是被更改为最新的架构,所以一次通过更新所有行的表就可以完成所有未完成的定点更改。

-199 ISAM error: Dbspace is full.

The dbspace is full. If you are adding a logical log through onparams, there is not enough space in the dbspace for a log of the size specified. This error also occurs if you attempt to create a temporary table with log(the default log setting for temporary tables) when the DBSPACETEMP variable in ONCONFIG is set to TEMP or NOTCRITICAL.

dbspace 已满。如果要通过 onparams 添加逻辑日志,则 dbspace 中没有足够的空间用于指定大小的日志。当 ONCONFIG 中的 DBSPACETEMP 变量设置为 TEMP 或 NOTCRITICAL时,如果尝试创建带有 LOG 的临时表(临时表的缺省日志设置),也会发生此错误。

To add the logical log, either add one or more chunks to the dbspace or specify a smaller log size.

要添加逻辑日志,可以向 dbspace 添加一个或多个 chunk ,或者指定较小的日志大小。

To create temporary tables, either set DBSPACETEMP to ALL or create temporary tables with no log.

若要创建临时表,请将 DBSPACETEMP 设置为 ALL ,或创建没有日志的临时表。

-199 Smart Disk Error.

An error has occurred with the Smart Disk system. For more information,see the accompanying message.

智能磁盘系统发生错误。有关更多信息,请参见所附消息。