OceanBase logo

OceanBase

トランザクション処理、分析、AIワークロードに最適な分散データベース

プロダクト概要
デプロイを自由に

OceanBase Cloud

OceanBaseの導入とスケーリングを最適化

エンタープライズ版

自社インフラ上での運用・管理に対応

オープンソース版を試す

コミュニティ版

開発者向けオープンソース分散データベース

OceanBase seekdb

AIネイティブなオープンソースの検索データベース

顧客事例

さまざまな業界の企業による導入事例を紹介します。

さらに見る
利用シーン別

あらゆるシナリオに対応するOLTP

ハイブリッドクラウドソリューション

大容量ストレージデータベースのコスト削減

リアルタイム分析混合ワークロード

複数インスタンスの統合

ドキュメント

会社概要

OceanBaseの企業情報、パートナーシップ、そして信頼性・セキュリティへの取り組みについて紹介します。

OceanBaseについて

トラストセンター

法的情報

お問い合わせ

日本 - 日本語
International - English
中国站 - 简体中文
クラウドで始める

OceanBase

トランザクション処理、分析、AIワークロードに最適な分散データベース

プロダクト概要
デプロイを自由に

OceanBase Cloud

OceanBaseの導入とスケーリングを最適化

エンタープライズ版

自社インフラ上での運用・管理に対応

オープンソース版を試す

コミュニティ版

開発者向けオープンソース分散データベース

OceanBase seekdb

AIネイティブなオープンソースの検索データベース

顧客事例

さまざまな業界の企業による導入事例を紹介します。

さらに見る
利用シーン別

あらゆるシナリオに対応するOLTP

ハイブリッドクラウドソリューション

大容量ストレージデータベースのコスト削減

リアルタイム分析混合ワークロード

複数インスタンスの統合

OceanBaseの企業情報、パートナーシップ、そして信頼性・セキュリティへの取り組みについて紹介します。

OceanBaseについて

トラストセンター

法的情報

お問い合わせ

クラウドで始める
编组
すべての製品
    • データベース
    • アイコンOceanBaseデータベース
    • アイコンOceanBase Cloud
アイコン

OceanBaseデータベース

SQL - V4.4.2

    OceanBase ロゴ

    AI時代を支える分散データベース

    日本 - 日本語
    International - English
    中国站 - 简体中文
    プロダクト
    OceanBase Cloudエンタープライズ版コミュニティ版OceanBase seekdb
    会社概要
    OceanBaseについてトラストセンター法的情報お問い合わせ
    公式アカウント
    ConnpassXQiitaLumaGitHub

    © OceanBase 2026. All rights reserved

    クラウドサービス契約個人情報保護ポリシーセキュリティ
    お問い合わせ
    ドキュメントフィードバック
    1. ホーム
    2. OceanBaseデータベース
    3. SQL
    4. V4.4.2
    アイコンOceanBaseデータベース
    SQL - V 4.4.2
    データベース
    • OceanBaseデータベース
    • OceanBase Cloud
    SQL
    KV
    • V 4.4.2
    • V 4.3.5

    ALTER FUNCTION

    最終更新日:2026-06-15 02:31:31  更新
    シェア
    このページの内容
    シェア

    ALTER FUNCTION ステートメントは、ストアド関数の1つまたは複数の特性を変更するために使用します。

    ALTER FUNCTION ステートメントの構文は以下のとおりです:

    ALTER FUNCTION func_name [characteristic ...]
    
    characteristic: {
        COMMENT 'string'
      | LANGUAGE SQL
      | { CONTAINS SQL | NO SQL | READS SQL DATA | MODIFIES SQL DATA }
      | SQL SECURITY { DEFINER | INVOKER }
    }
    

    ALTER FUNCTION ステートメントは、ストアド関数のパラメータや本体を変更するためには使用できません。そのような変更が必要な場合は、DROP FUNCTION と CREATE FUNCTION を使用して関数を削除し、再作成する必要があります。

    関数に対する ALTER ROUTINE 権限が付与されている必要があります。デフォルトでは、この権限は関数の作成者に自動的に付与されます。

    ルーチンがデータを使用する特性に関する情報は以下のとおりです:

    • CONTAINS SQL は、ルーチンにデータの読み書きを行うステートメントが含まれないことを示します。これがデフォルト値です。例えば、SET@x=1 または DO RELEASE_LOCK('abc') は実行されますが、データを読み書きしません。

    • NO SQL は、ルーチンにSQLステートメントが含まれないことを示します。

    • READS SQL DATA は、ルーチンにデータを読み取るステートメント(例:SELECT)が含まれることを示しますが、データを書き込むステートメントは含まれません。

    • MODIFIES SQL DATA は、ルーチンにデータを書き込む可能性のあるステートメント(例:INSERT または DELETE)が含まれることを示します。

    SQL SECURITY は DEFINER または INVOKER のいずれかに設定でき、ルーチンが指定されたユーザー(このユーザーはルーチンに関連付けられたデータベースへのアクセス権限を持っている必要があります)の権限で実行されるか、呼び出し元の権限で実行されるかを指定します。デフォルト値は DEFINER です。ルーチンを呼び出すユーザーは、そのルーチンに対する EXECUTE 権限を持っている必要があります。

    ALTER FUNCTION の例は以下のとおりです:

    obclient> ALTER FUNCTION my_func LANGUAGE SQL READS SQL DATA  COMMENT '例';
    Query OK, 0 rows affected
    

    前のトピック

    DO
    最後

    次のトピック

    ALTER PROCEDURE
    次