適用対象
この内容はOceanBaseデータベースのOracleモードにのみ適用されます。
OBE-01000:maximum open cursors exceeded
OceanBaseエラーコード:5930
SQLSTATE:HY000
エラーの原因:許可されている最大開放カーソル数を超えました。
OBE-01001:invalid cursor
OceanBaseエラーコード:5844
SQLSTATE:HY000
エラーの原因:無効なカーソルです。
OBE-01002:fetch out of sequence
OceanBaseエラーコード:5931
SQLSTATE:HY000
エラーの原因:無効なカーソルからアクセスしようとしています。このエラーが発生する原因は以下の通りです:
最後の行まで検索して
OBE-1403エラーを返した後、カーソルからアクセスします。FOR UPDATE句を使用してカーソルを開き、その後COMMITを実行してからアクセスします。SQL文内のすべてのプレースホルダーを再バインドし、その後再度その文を実行してからアクセスします。
説明
PLカーソルループは暗黙的に抽出を行うため、このエラーが発生する可能性もあります。
解決策:
検索が最後の行に達した後、
FETCHステートメントを実行しないでください。FOR UPDATE句を使用して開いたカーソルに対して、COMMITを実行した後にアクセスしないでください。再バインドしてSQLステートメントを実行し、その後アクセスします。
OBE-01003:no statement parsed
OceanBaseエラーコード:9678
SQLSTATE:HY000
エラーの原因:DBMS_SQL PARSEがDDLステートメントを試みました。
解決策:DBMS_SQL PARSEのステートメントタイプを
SELECTステートメントに変更します。
説明
このエラーコードはV4.0.0バージョンから導入されました。
OBE-01006:bind variable does not exist
OceanBaseエラーコード:5979、9685
SQLSTATE:HY000
エラーの原因:バインドされた変数が存在しません。
解決策:定義済みの変数をバインドする必要があります。
## OBE-01007:variable not in select list", 1007, "variable not in select list
- OceanBaseエラーコード:9745
- SQLSTATE:HY000
- エラーの原因:変数が選択リストに含まれていません。
- 解決方法:入力したSQLステートメントが正しいかどうか確認する必要があります。
説明
このエラーコードはV4.1.0バージョンから導入されました。
OBE-01008:not all variables bound
OceanBaseエラーコード:5857、5978
SQLSTATE:HY000
エラーの原因:一部の変数が設定されていません。
OBE-01012:not logged on
OceanBaseエラーコード:5846
SQLSTATE:HY000
エラーの原因:ログオンしていません。
OBE-01017:invalid username/password; logon denied
OceanBaseエラーコード:5845
SQLSTATE:HY000
エラーの原因:ユーザー名/パスワードが無効で、ログオンが拒否されました。
OBE-01031:insufficient privileges
OceanBaseエラーコード:5360
SQLSTATE:HY000
エラーの原因:データベース操作を実行しますが、必要な権限が付与されていません。
解決方法:データベース管理者または指定されたセキュリティ管理者に連絡し、必要な権限を付与してもらってください。
関連する問題ケース:
- テーブル作成失敗、エラーコード5360/OBE-01031
- OceanBaseデータベースのOracleテナントでユーザー間のテーブルに外部キー制約を作成する際にOBE-01031エラーが報告されました
OBE-01045:user %.*s lacks CREATE SESSION privilege; logon denied
OceanBaseエラーコード:5361
SQLSTATE:HY000
エラーの原因:ユーザーIDに接続しようとしていますが、そのユーザーIDには
CREATE SESSION権限が付与されていません。解決策:該当するユーザーに
CREATE SESSION権限を付与します。
関連する問題ケース:
OBE-01086:savepoint does not exist
OceanBaseエラーコード:6242
SQLSTATE:42000
エラーの原因:このセッションで一度も作成されていない、または無効なセーブポイントまでロールバックしようとしています。
解決策:そのセーブポイントを作成したセッションから、そのセーブポイントまでロールバックしてみてください。
OBE-01092:OceanBase instance terminated. Disconnection forced
OceanBaseエラーコード:5066
SQLSTATE:HY000
エラーの原因:このプロセスが接続しているセッションが異常終了しました。
解決策:詳細については、アラートログを確認してください。その後、セッションを再起動してください。
説明
このエラーコードは、現在のバージョンではPL例外処理メカニズムによってキャプチャされない例外です。
OBE-01400:cannot insert NULL into '(%.*s)'
OceanBaseエラーコード:4235
SQLSTATE:23000
エラーの原因:上記のオブジェクトに
NULL値を挿入しようとしていますが、これらのオブジェクトはNULL値を受け入れることができません。
OBE-01400:cannot insert NULL into (%.*s)
OceanBaseエラーコード:5030
SQLSTATE:42000
エラーの原因:既存のオブジェクトに
NULLを挿入しようとしていますが、これらのオブジェクトはNULL値を受け入れることができません。
OBE-01402:view WITH CHECK OPTION where-clause violation
OceanBaseエラーコード:5971
SQLSTATE:HY000
エラーの原因:ビューに対するDML操作が、ビューの
WITH CHECK OPTION制約に違反しています。解決策:ビューに
INSERTで挿入するデータ、またはUPDATEで更新するデータは、ビュー定義内のwhere条件を満たさなければなりません。
説明
このエラーコードはV4.0.0バージョンから導入されました。
OBE-01403:no data found
OceanBaseエラーコード:4026
SQLSTATE:02000
エラーの原因:オブジェクトからデータが見つかりません。
解決策:オブジェクトからのデータがありません。これは、データ抽出が終了したために発生する可能性があります。
OBE-01405:fetched column value is NULL
OceanBaseエラーコード:5958
SQLSTATE:HY000
エラーの原因:ANYTYPE SETINFOストアドプロシージャの呼び出しで
elem_countがNULLに設定されました。解決策:
elem_countをNULLに設定することを禁止します。
説明
このエラーコードはV4.0.0バージョンから導入されました。
OBE-01408:such column list already indexed
OceanBaseエラーコード:5672
SQLSTATE:HY000
エラーの原因:このようなリストはすでにインデックス付けされています。
OBE-01410:invalid ROWID
OceanBaseエラーコード:5802
SQLSTATE:HY000
エラーの原因:無効な
ROWIDです。
OBE-01416:two tables cannot be outer-joined to each other
OceanBaseエラーコード:5620
SQLSTATE:HY000
エラーの原因:二つのテーブルを相互に外部結合することはできません。
OBE-01418:specified index does not exist
OceanBaseエラーコード:5209
SQLSTATE:42000
エラーの原因:指定されたインデックスが存在しません。
OBE-01422:exact fetch returns more than requested number of rows
OceanBaseエラーコード:5294
SQLSTATE:42000
エラーの原因:
exact fetchで指定された数値が返される行数より小さいです。解決策:クエリを書き直すか、リクエストされた行数を変更してください。
OBE-01424:missing or illegal character following the escape character
OceanBaseエラーコード:5665
SQLSTATE:HY000
エラーの原因:LIKEモードでは、エスケープ文字の後に続く文字が欠落しているか、エスケープ文字であるパーセント記号(%)またはアンダースコア(_)ではありません。
解決策:エスケープ文字を削除するか、欠けている文字を指定してください。
OBE-01425:escape character must be character string of length 1
OceanBaseエラーコード:5666
SQLSTATE:HY000
エラーの原因:LIKEのエスケープ文字は長さ1の文字列ではありません。
解決策:長さ1の文字列に変更してください。
OBE-01426:numeric overflow
OceanBaseエラーコード:5088
SQLSTATE:22003
エラーの原因:値式の計算によりオーバーフロー/アンダーフローが発生します。
解決策:演算子を減らしてください。
OBE-01426:numeric overflow
OceanBaseエラーコード:5089
SQLSTATE:22003
エラーの原因:値式の計算によりオーバーフロー/アンダーフローが発生します。
解決策:演算子を減らしてください。
OBE-01426:numeric overflow
OceanBaseエラーコード:5093
SQLSTATE:22003
エラーの原因:値式の計算によりオーバーフロー/アンダーフローが発生します。
解決策:演算子を減らしてください。
OBE-01427:single-row subquery returns more than one row
OceanBaseエラーコード:5615
SQLSTATE:HY000
エラーの原因:単一行サブクエリが複数の行を返します。
OBE-01427:single-row subquery returns more than one row
OceanBaseエラーコード:5153
SQLSTATE:21000
エラーの原因:単一行サブクエリが複数の行を返します。
OBE-01428:argument '%ld' is out of range
OceanBaseエラーコード:5674
SQLSTATE:HY000
エラーの原因:パラメータが範囲外です。
OBE-01436:CONNECT BY loop in user data
OceanBaseエラーコード:5764
SQLSTATE:HY000
エラーの原因:ユーザーデータに
CONNECT BYループが存在します。
OBE-01437:cannot have join with CONNECT BY
OceanBaseエラーコード:5765
SQLSTATE:HY000
エラーの原因:
CONNECT BYと結合することはできません。
OBE-01438:value larger than specified precision allowed for this column '%.*s' at row %ld
OceanBaseエラーコード:4224
SQLSTATE:22003
エラーの原因:レコードの挿入または更新時に、入力された数値がその列の精度を超えています。
解決策:数値列の精度に合致する値を入力するか、
ALTER TABLEコマンドのMODIFYオプションを使用して列の精度を拡張します。
OBE-01441:cannot decrease column length because some value is too big
OceanBaseエラーコード:5897
SQLSTATE:HY000
エラーの原因:一部の値が大きすぎるため、列長を短縮できません。
関連する問題例:
- Oracleモードで列長を変更しようとした際にOBE-01441エラーが発生した場合
- cannot decrease column length because some value is too bigエラーが発生した理由
OBE-01442:column to be modified to NOT NULL is already NOT NULL
OceanBaseエラーコード:5849
SQLSTATE:HY000
エラーの原因:
NOT NULLに変更する列は既にNOT NULLです。
OBE-01445:cannot select ROWID from, or sample, a join view without a key-preserved table
OceanBaseエラーコード:5902
SQLSTATE:HY000
エラーの原因:
key-preserved tableがない場合、結合ビューまたはサンプルからROWIDを照会できません。
OBE-01446:cannot select ROWID from, or sample, a view with DISTINCT, GROUP BY, etc
OceanBaseエラーコード:5903
SQLSTATE:HY000
エラーの原因:
DISTINCTまたはGROUP BYなどを持つビューからROWIDを照会できません。
OBE-01450:maximum key length (%ld) exceeded
OceanBaseエラーコード:5196
SQLSTATE:42000
エラーの原因:最大キー長を超過しました。
関連する問題例:
OBE-01451:column to be modified to NULL cannot be modified to NULL
OceanBaseエラーコード:5850
SQLSTATE:HY000
エラーの原因:列は既に
NULL値を許可している可能性があります。NOT NULL制約は主キーまたはCHECK制約の一部です。解決策:主キーまたは
CHECK制約がNOT NULL制約を強制実施している場合は、その制約を削除します。
OBE-01453:SET TRANSACTION must be first statement of transaction
OceanBaseエラーコード:5219
SQLSTATE:25001
エラーの原因:トランザクションが進行中の場合、トランザクションの特性を変更できません。
解決策:トランザクションをコミット(またはロールバック)してから、変更操作を再度実行します。
OBE-01456:may not perform insert/delete/update operation inside a READ ONLY transaction
OceanBaseエラーコード:5220、6226
SQLSTATE:25006
エラーの原因:読み取り専用トランザクション内での挿入、削除、更新操作は実行できません。
解決策:トランザクションをコミット(またはロールバック)してから、再度実行します。
OBE-01463:cannot modify column datatype with current constraint(s)
OceanBaseエラーコード:5860
SQLSTATE:HY000
エラーの原因:
CHECK制約を持つ列のデータ型を変更しようとしています。ただし、CHECK制約を持つ列では、データ型をCHARからVARCHARに変更することのみが許可されています。解決策:制約を削除するか、違反操作を実行しないようにします。
OBE-01465:invalid hex number
OceanBaseエラーコード:5342
SQLSTATE:HY000
エラーの原因:無効な16進数です。
OBE-01466:Unable to read data -* Table definition has changed
- OceanBaseエラーコード:5386
- SQLSTATE:HY000
- エラーの原因:テーブルの定義が変更され、読み取ったスナップショットポイントが古すぎるため、正しく読み取るまたは解析することができません。
- 解決策:テーブルの定義に変更があったかどうか確認し、列の追加や削除、データ型や長さの変更などがあったかどうかを確認します。
説明
このエラーコードはV4.2.0バージョンから導入されました。
OBE-01468:a predicate may reference only one outer-joined table
OceanBaseエラーコード:5621
SQLSTATE:HY000
エラーの原因:述語は外部結合テーブルを1つしか参照できません。
OBE-01476:divisor is equal to zero
OceanBaseエラーコード:4333
SQLSTATE:HY000
エラーの原因:除数がゼロに等しいです。
関連するケース:
OBE-01481:invalid number format model
OceanBaseエラーコード:5606
SQLSTATE:42000
エラーの原因:
TO_CHARを使用して数値を文字列に変換したり、TO_NUMBERを使用して文字列を数値に変換したりしようとしていますが、無効な数値形式を使用しています。解決策:数値フォーマットの詳細については、公式ドキュメント「SQLリファレンス(Oracleモード)」のフォーマットモデルの概要セクションを参照してください。
OBE-01481:invalid number format model
OceanBaseエラーコード:5608
SQLSTATE:42000
エラーの原因:
TO_CHARを使用して数値を文字列に変換したり、TO_NUMBERを使用して文字列を数値に変換したりしようとしていますが、無効な数値形式を使用しています。解決策:数値フォーマットの詳細については、公式ドキュメント「SQLリファレンス(Oracleモード)」のフォーマットモデルの概要セクションを参照してください。
OBE-01482:unsupported character set
OceanBaseエラーコード:5937
SQLSTATE:42000
エラーの原因:操作を実行するために使用される文字セットはサポートされていない文字セットです。
解決策:サポートされている文字セットを使用してください。
OBE-01489:result of string concatenation is too long
OceanBaseエラーコード:5348
SQLSTATE:HY000
エラーの原因:文字列連結の結果が最大値を超えています。
解決策:文字列連結の結果が最大値より小さいことを確認してください。