非互換
FUJITSU Enterprise Postgres 9.6以降では、OIDを取得する以下のシステムカタログ情報関数において、引数のデータ型をcstring型からtext型に変更します。
to_regclass
to_regproc
to_regprocedure
to_regoper
to_regoperator
to_regtype
to_regnamespace
to_regrole
引数のデータ型がcstring型のため、キャストが必要な場合があります。
[例]
=# SELECT to_regclass('t'||'1'); ERROR: function to_regclass(text) does not exist LINE 1: SELECT to_regclass('t'||'1'); ^ HINT: No function matches the given name and argument types. You might need to add explicit type casts. =# SELECT to_regclass(('t'||'1')::cstring); to_regclass ------------- t1 (1 row)
引数のデータ型がtext型のため、キャストが不要になります。cstring型にキャストする場合はエラーになります。
[例]
=# SELECT to_regclass('t'||'1'); to_regclass ------------- t1 (1 row) =# SELECT to_regclass(('t'||'1')::cstring); ERROR: function to_regclass(cstring) does not exist LINE 1: SELECT to_regclass(('t'||'1')::cstring); ^ HINT: No function matches the given name and argument types. You might need to add explicit type casts.
対処方法
引数をcstring型にキャストしている場合は、キャストを削除してください。