次の例は、SET QUERY_BANDリクエストを使用してプロキシ セッションのプロキシ ロールを変更する方法を示しています。このセットのすべての例は、Teradataセッション モードで実行されています。
この例では、信頼済みセッションのプロキシ ロールを特定のロールに設定するため、指定のクエリー バンドからPROXYROLEの名前と値のペアを使用します。
SET QUERY BAND='PROXYUSER=fred;PROXYROLE=administration;' FOR SESSION;
この例では、セッション クエリー バンドにより設定された信頼済みセッションのプロキシ ロールを変更するため、指定のクエリー バンドからPROXYROLEの名前と値のペアを使用します。
SET QUERY_BAND='PROXYUSER=cluser1;PROXYROLE=role1;' FOR SESSION; BEGIN TRANSACTION; SET QUERY_BAND='PROXYROLE=role2;' FOR TRANSACTION; SELECT * FROM table; END TRANSACTION;
この例のセットは、クエリー バンドの値を1つのトランザクションで複数回変更できることを示しています。
BEGIN TRANSACTION; SET QUERY_BAND='PROXYUSER=cluser1;PROXYROLE=role1;' FOR TRANSACTION; SELECT * FROM table; SET QUERY_BAND='PROXYUSER=cluser1;PROXYROLE=role2;' FOR TRANSACTION; SELECT * FROM table2; END TRANSACTION;
この例では、セッション クエリー バンドにより設定された信頼済みセッションのプロキシ ロールを変更するため、指定のクエリー バンドからPROXYROLEの名前と値のペアを使用します。
SET QUERY_BAND='PROXYUSER=cluser1;PROXYROLE=role1;' FOR SESSION; SELECT * FROM table; SET QUERY_BAND='PROXYUSER=cluser1;PROXYROLE=role2;' FOR SESSION; SELECT * FROM table2;
この例は、セッション ベースのクエリー バンドを使用してトランザクションの信頼済みセッションのロールを変更しようとしたため、失敗します。
BEGIN TRANSACTION; SET QUERY_BAND='PROXYUSER=cluser1;PROXYROLE=role1;' FOR TRANSACTION; SELECT * FROM table; SET QUERY_BAND='PROXYROLE=role2;' FOR SESSION; END TRANSACTION;