JDBCアプリケーションでは、いくつかのALTER SESSIONコマンドを発行する必要があります。私はそれらをアプリケーションコード自体に入れたくありません。アプリケーションが使用するデータベーススキーマ(データベース側)のセッションパラメータのデフォルトを指定する方法はありますか?Oracleユーザーのデフォルトの「alter session」を設定する
答えて
ほとんどのセッションパラメータは、クライアントアプリケーションによって定義されます。クライアント設定を上書きする場合は、DATABASE TRIGGER
を作成します。たとえば、これはBAR
スキーマにLOGON
トリガーを作成します。
CREATE OR REPLACE TRIGGER bar.foo
AFTER LOGON ON DATABASE WHEN (USER = 'BAR')
BEGIN
dbms_session.set_nls('NLS_NUMERIC_CHARACTERS', '''.,''');
EXECUTE IMMEDIATE 'ALTER SESSION SET CURRENT_SCHEMA=hr';
END foo;
ログオンデータベーストリガーは、アプリケーションコードの変更なしでこれを行う唯一の方法です。 – mathewbutler
私はこれをテストしていませんが、セッションが作成されるたびにセッション変数を設定するストアドプロシージャをアプリケーションに呼び出すことができますか?次に、必要に応じてサーバー側のストアドプロシージャを変更することができます。
ポイントは、アプリケーションコードをまったく変更しないことです。セッションの作成(ストアドプロシージャの呼び出しなど)にいくつかのアクションを含めるように変更すると、おそらくALTER SESSION呼び出しを直接インクルードできるように、これらのアクションを構成可能にすることができます。 – Thilo
- 1. Spring JdbcTemplate alter session
- 2. デフォルトのSQL ALTER TABLE
- 3. Oracle alter index/rebuild
- 4. Oracle Alter Object?
- 5. alter system flush shared_pool oracle
- 6. Oracle SQL-ALTER TABLEエラー
- 7. oracle 12c cursor_sharing alter multple sessions
- 8. Devise - 新規ユーザーのデフォルト値の設定
- 9. Zend Frameworkのデフォルトのユーザー設定戦略
- 10. デフォルトをユーザー定義の設定とマージする
- 11. Linuxのコマンドラインからalter sessionを使用して実行しているOracle SQLスクリプト
- 12. Oracle coherence * web-session sharing
- 13. デフォルトで1のMySQL Alterテーブル追加カラム
- 14. VSCodeのすべてのユーザーのデフォルト設定を設定します
- 15. ALTERでANSIパディングをオフに設定
- 16. アプリの12/24時間設定をユーザーのデバイス設定値にデフォルト設定する
- 17. Oracle 12c RAC GV $ SESSION EVENTカラム
- 18. ADユーザーをデフォルトでアクティブに設定する(作成時)
- 19. UbuntuのすべてのユーザーにJavaホームのデフォルトを設定する方法
- 20. oracleデータベースで、ユーザー定義型のパラメータのデフォルト値を指定する方法はありますか。
- 21. Sonataのユーザーのためのデフォルトのアバターを設定するには?
- 22. Oracleユーザー定義レコード
- 23. ALTER TABLE、nullでない列にnullを設定する、PostgreSQL 9.1
- 24. TNS_ADMINを設定しても、Oracleはデフォルトのtnsnames.oraを使用します
- 25. アンドロイドアプリのデフォルトのフォントサイズを設定する
- 26. symfonyのデフォルトのタイムゾーンを設定する
- 27. oracle - Alterテーブルが動作しません
- 28. PreferenceScreenのデフォルト設定
- 29. 設定のデフォルト値
- 30. ngStorageのデフォルト設定
@Thiloを、おかげであなただけの私に多くの時間を保存しました! –