Click here to view and discuss this page in DocCommentXchange. In the future, you will be sent there automatically.

SAP Sybase SQL Anywhere 16.0 » SQL Anywhere 16 変更点とアップグレード » バージョン 16.0 の新機能 » SQL Anywhere の動作の変更

 

システムプロシージャとファンクションの動作の変更

次に、SQL Anywhere バージョン 16.0 で追加されたシステムプロシージャとファンクションの変更点を示します。

  • TRACEBACK 関数の強化   TRACEBACK 関数はオブジェクト名と行番号による注釈がつけられた呼び出しスタックを返します。これにより、呼び出しスタック内でレポートされる実際の文を容易に探すことができます。 TRACEBACK 関数 [その他]を参照してください。

  • SMTP および MAPI リターンコードの変更   xp_startmail、xp_startsmtp、xp_sendmail、xp_stopmail、xp_stopsmtp システムプロシージャで使用されるリターンコードは、次の点が変更されています。

    リターンコード 以前のリリースでの意味 バージョン 16.0 のデータベースでの意味 その他の情報
    -1 未知のエラー 新しいエラーコード
    0 成功 成功
    1 無効なパラメータが指定された 新しいエラーコード
    2 xp_startmail または xp_startsmtp が失敗 メモリ不足
    3 xp_stopmail または xp_stopsmtp が失敗 xp_startmail または xp_startsmtp が呼び出されなかった
    4 ホスト名が不正 新しいエラーコード
    5 xp_sendmail が失敗 接続エラー
    6 セキュリティで保護された接続のエラー 新しいエラーコード
    7 MAPI 関数を使用できない 新しいエラーコード

    xp_get_mail_error_code および xp_get_mail_error_text システムプロシージャはリターンコードに関する追加情報を返します。新しいシステムプロシージャとエラーコードを取得するには、既存のデータベースをアップグレードしてください。 次の項を参照してください。

    使用しているアプリケーションで更新後のリターンコードをチェックするように変更できない場合、SQL Anywhere の scripts サブディレクトリにあるバージョン 12 の dbext.dll ファイルと use_old_dbextf.sql スクリプトを使用することにより、データベースサーバでソフトウェアの以前のリリースのリターンコードが使用されるよう設定することができます。 データベースサーバの配備を参照してください。

  • USER_NAME 関数と SUSER_NAME 関数による VARCHAR の返却   USER_NAME 関数と SUSER_NAME 関数によって、LONG VARCHAR 型ではなく、VARCHAR 型のデータが返されるようになりました。これらの関数を使用するマテリアライズドビューを使用している場合、再構築する必要があります。

  • エラー処理   ローの挿入または解析中に文でエラーが発生した場合に LOAD TABLE 操作を可能にするため、問題のあるローを ROW LOG に書き込み、エラーメッセージを MESSAGE LOG に書き込むことができます。指定回数のエラーが発生すると、文の実行は失敗し、ロールバックされます。この機能をサポートするために、次の句が追加されています。

    • ALLOW...ERRORS
    • ROW LOG...
    • MESSAGE LOG...

    LOAD TABLE 文を参照してください。