DBA_DEPENDENCIES: 11gR2 fine-grained dependency tracking -- which columns??

DBA_DEPENDENCIES is great, but I need to know the dependent columns. Given that 11g supports fine-grained dependency tracking... for example:
create view emp_view as
select emp_no, emp_name
from employees
where emp_no in (select emp_no from employees where hire_date > sysdate-2000)
EMP_VIEW only exposes EMP_NO and EMP_NAME.
If I drop the column EMPLOYEES.HIRE_DATE, Oracle will not invalidate objects that reference just EMP_NO and EMP_NAME, but in this case Oracle immediately invalidates EMP_VIEW because the view definition contains HIRE_DATE.
Where does Oracle store this column dependency? Only at the table/view/function level in DBA_DEPENDENCIES. Maybe in an X$ table somewhere?
Or does Oracle do an "on the fly" check for the dropped column in all dependent objects (seems messy).
Before I change any table or view, I want to know what else I may have to change without finding out the hard way. I can easily look at the view's column list, but if I have to go into the view text, or the function text... messy! Must be a better way.
Thanks.
BB

Exactly what I needed. Not sure why I didn't find this with the ten different Google searches I did...

Similar Messages

  • Process works fine... how to track which column is causing error..

    hi, i have a big sp which does lets say tasks A, B, C, D...
    After every task i.e A, B, C, D I have an update or insert
    statement. The update & insert both work fine, except that I
    have coldfusion catch code for sp execution and it returns String
    or binary data would be truncated error. Normally this means
    inserting something into a column whose lenght is less than whats
    being inserted. I understand this , but how can i determine which
    column is causing problem since after tasks A,B,C,D the insert or
    update i have is working fine. It would be have easy if i couldnt
    have seen inserted or updated records, but in this case the
    functionality is working fine except that coldfusin gives an error
    which i want to avoid.
    Thanks in advance.

    quote:
    Originally posted by:
    MikerRoo
    Yes, if the database column is smalldatetime then then
    @start_date should be smalldatetime.
    However, the SP's input variable (call it say,
    "RawStartDate") can still be varchar for the reasons you stated.
    Just be sure to return the appropriate error and/or insert a valid
    smalldatetime always.
    Sorry for confusion... GetDate was just an example , it could
    another variable @end_date which is varchar(20).
    so we could have SET @start_date =
    CAST(convert(varchar(20),@enddate,101) as datetime)
    Now coming back to main problem.. I am not calling the SP
    from coldfusion. I am directly running it thru Query Analyser and
    here is what iam getting for a date value passed as '2006-05-24
    00:00:00.000'
    Server: Msg 295, Level 16, State 3, Procedure WS_AUTO_INTAKE,
    Line 263
    Syntax error converting character string to smalldatetime
    data type.
    here is the query starting at line 263
    INSERT INTO intake_seq (intake_id, intake_seq, absence_type,
    start_date, start_time, end_date, end_time)
    VALUES (@intake_id, 1, @absence_type, cast(@start_date as
    smalldatetime), DATEADD ( hh , 8, cast(@start_date as
    smalldatetime)), cast(@end_date as smalldatetime), DATEADD ( hh ,
    16, cast(@start_date as smalldatetime)) )
    You would say, ok try just datetime instead of
    smalldatetime...tried that also .. it gives this error
    Server: Msg 241, Level 16, State 1, Procedure WS_AUTO_INTAKE,
    Line 263
    Syntax error converting datetime from character string.
    Its all got to do with this value '2006-05-24 00:00:00.000'
    which is passed as one of the parameters to sp call... I tried with
    this and gives error... when i removed the last 3 zeroes with . ,
    it works fine ...example '2006-05-24 00:00:00'
    What is wrong here? Iam I missing something????
    by the way , this SP is working fine for 99% of time... its
    just that on very few occassions iam seeing the error... thats the
    reason i persisted with SP INPUT VARIABLES declared as VARCHAR
    rather than int or datetime, ....
    any ideas????
    I know I can have convert(varchar(20), @start_date,101) to
    get the format dd/mm/yy but then I have to cast it to datetime
    which will again make it in format dd/mm/yy hh:mi:ss... any other
    way to just keep it dd:mm:yy ???

  • Fine Grained Auditing FGA - Which procedure or package caused the DML ?

    Hi All,
    I'm using FGA at column level. I'm trying to figure out all PL/SQL Subprograms like procedures, functions, packages, etc, which issued the SQL_TEXT in the dba_fga_audit_trail view.
    e.g.
    begin
    sys.dbms_fga.add_policy(
    object_schema => 'SCOTT',
    object_name => 'EMP',
    policy_name => 'SCOTT_EMP_POLICY',
    audit_condition => null,
    audit_column => 'SALARY',
    statement_types => 'UPDATE');
    end;
    The dba_fga_audit_trail view successfully displays all Update Statements in the SQL_TEXT column. However, as to which PL/SQL Subprogram it was issued from - this I don't know.
    Is there any way to determine this? Maybe through another system view?
    I tried replacing the SQL_TEXT with a lot of '%' for every space and every bind variable characters, so that I can do a LIKE in the DBA_SOURCE view, . . . but this didn't 100% worked.
    Many Thanks,
    Henry Wu

    Hi,
    Personnally i've never seen an automatic way for doing this...
    What you cando (but it can be very fastidious) is to declare constants (or IDs) for your differents package/procedure/function names and add them to your different DMLs commands.
    procedure TheProc is
    CurrentProc constant varchar2(100):='TheProc';
    begin
    update mytable set .... , proc_name=CurrentProc
    end;this is an old post but it might interrest you:
    Get current procedure

  • Track which attributes/column are updated of a table

    Hi All,
    How can i track that which columns are updated of a table when update statement is executed on that particular table. I want to track it in update trigger.
    Suppose table name is T1 and has columns A,b,c, ...... z.
    One way is compare values of all columns using if statement like
    if :new.a <> :old.a then
    but this method is quite code expensive particular for table having 100 plus column.
    Is there exist any dictionary view which can provide this info.

    if (UPDATING('YOUR_COLUMN_NAME'))
    then
      your_code_for_this_col_update ;
    end if ;

  • Fine Grained Access ERROR on INSERT when generating unique keys

    I'm using VPD/Fine Grained Access Control (FGAC) to implement security on my 9i backend. I created a security policy function that returns the predicate 'owner = USER'; - each of the tables has an additional column titled OWNER which contains the name of the logged-in user. Every time a user inserts a record, a BEFORE INSERT trigger fires (for every row) and inserts the USER name into the OWNER column. This is fairly straightforward and ensures that users can see only their rows. Using the DBMS_RLS.add_policy procedure, I attached the security policy to several tables and made it effective upon SELECT, UPDATE, INSERT, and DELETE statements.
    However, the frontend Java application (custom-made) generates unique IDs (sequences are not used) by selecting max(ID)+1 from the primary key columns of the tables. The problem is that the predicate is appended to the SELECT max(ID)+1 query to limit the max(ID) to only those rows where 'owner = USER'. Therefore, the max(ID) generated is not the largest ID for the entire table, but only the largest among the USER rows.
    So unless that USER happens to have the the largest ID in the whole table (and it has worked then), a primary-key violation error will be returned and the INSERT operation will be aborted.
    How can I allow every USER to select from AND get the absolute largest ID from the PK column without allowing that user to select records that don't belong to him? If I had developed the application, I would have made use of sequences on the back-end to generate unique primary key IDs. Unfortunately, I don't have this option and must work with the application as is.
    NOTE: the front-end Java application understands only the base table names, NOT Views created by me on the server. If the answer to this problem involves views, how can I make use of them on the backend when the front-end code does not recognize them?
    Any help is greatly appreciated!
    Michael

    first you could use default column values, not a trigger, which is more expensive.
    if your apps already assumes full access to table to get max id ( another RT ), this is bad. Current RLS can not really help if you can not change the apps because of this flaw logic ( you can store the maxid anywhere, why scanning the whole table to find it )

  • FINE GRAINED ACCESS CONTROL(FGAC)를 위한 DBMS_RLS.ADD_POLICY의 VERSION별 특징

    제품 : ORACLE SERVER
    작성날짜 : 2005-11-24
    FINE GRAINED ACCESS CONTROL(FGAC)를 위한 DBMS_RLS.ADD_POLICY의 VERSION별 특징
    =======================================================================
    PURPOSE
    row leve의 security 및 context관리 방법인 FGAC에 대한 간단한 개념 및 사용방법은
    <bul 23026>에 제시하였다.
    이 문서에는 FGAC를 위한 dbms_rls package의 8i ~ 10g까지의 version별 특징을
    정리하며, STATIC_POLICY와 POLCICY_TYPE parameter에 대해서는 예제를 이용하여
    자세히 살펴보도록 한다.
    Explanation & Examples
    dbms_rls.add_policy를 사용할 때 일반적으로 주는 value값의 예제는 다음과 같다.
    이중 대부분은 default값을 이용하여, 일반적으로는 앞의 5개의 parameter만
    value를 주면 된다.
    SQL> exec DBMS_RLS.ADD_POLICY ( -
    > object_schema => 'SCOTT', -
    > object_name => 'EMP', -
    > policy_name => 'POL1', -
    > function_schema => 'SYS', -
    > policy_function => 'PREDICATE', -
    > statement_types => 'SELECT', -
    > static_policy => false, -
    > policy_type => DBMS_RLS.DYNAMIC
    > long_predicate => false);
    1. FGAC의 version별 특징
    (1) sec_relevant_cols/sec_relevant_cols_opt : 10G
    위에 기술한 add_policy procedure의 parameter외에 10g에서 추가된
    parameter로 다음 두 parameter가 존재한다.
    이 parameter는 해당되는 column이 조회될때만 policy가 작동하게 하기 위한
    것으로 metalink.oracle.com site에서 <Note 250795.1> 를 살펴보면 사용 방법
    및 예제를 확인 가능하다.
    - sec_relevant_cols
    - sec_relevant_cols_opt
    (2) long_predicate : 10G
    default는 false이며, true로 지정하는 경우 predicate이 4000 bytes이상이
    될 수 있다.
    (3) statement_types : 10G부터 INDEX type추가
    9i까지는 SELECT, INSERT, UPDATE, DELETE에 대해서는 FGAC를 적용할 수
    있었으나, 10g부터는 INDEX type도 지정 가능하다.
    index를 지정하는 경우, function-based index 생성을 제한할 수 있으며,
    자세한 예제는 metalink.oracle.com site에서 <Note 315687.1>를 조회하여
    확인할 수 있다.
    (4) EXEMPT ACCESS POLICY 권한 : 9i
    특정 user가 모든 fine-grained access control policy의 영향을 받지
    않도록 하려면 exempt access policy권한을 grant하면 되며, 이것은 9i부터
    소개되었다.
    SQL> grant exempt access policy to scott;
    와 같은 방식으로 권한을 부여하면 되며, 이에 대한 자세한 예제는
    metalink.oracle.com site에서 <Note 174799.1>를 통해 확인 가능하다.
    (5) synonym에 대한 policy설정 : 9.2
    synonym에 대해서 VPD (Virtudal Private Database)에 대한 policy를 설정하는
    것이 가능해 졌으며 이에 대해서는 metalink.oracle.com에서 <Note 174368.1>를
    조회하여 자세한 방법 및 예제를 살펴볼 수 있다.
    (6) static_policy : 8.1.7.4
    static_policy paramter는 8i에는 없던 것으로 9i에서 도입되면서, 8.1.7.4에도
    반영되었다. default값은 false이며, 8173까지는 항상 false인 형태로 동작한다.
    즉, policy function이 매번 object를 access할때마다 실행된다.
    8.1.7.4부터는 이 parameter를 true로 설정할 수 있는대, 이렇게 되면
    해당 session에서 policy function이 한번 실행되고 그 function이 shared pool에
    cache되어 있으면 재실행없이 그대로 사용된다.
    10g부터는 (7)번에 설명하는 policy_type parameter가 추가되어,
    이 parameter에 true로 지정하는 대신, static_type은 false로 두고,
    policy_type을 dbms_rls.static 으로 지정하면,
    9i와 8174에서 static_policy를 true로 한것과 같은 결과가 나타난다.
    (7) policy_type: 10g
    다음과 같이 5가지 value가 가능하며, 이 중 default는 dynamic이다.
    - STATIC
    policy fuction에 포함된 predicate이 runtime환경에 따라 다른 결과를 내지
    않는 경우 사용하게 된다. 예를 들어 sysdate의해 다른 결과를 return하는
    경우에는 사용하면 사용하면 문제가 될 수 있다.
    static을 사용하는 경우 policy function은 한번 실행되어 SGA에 올라온 다음
    이후 같은 session에서 같은 object를 사용시에는 재실행 없이 해당 predicate의
    결과를 그대로 사용한다.
    - SHARD_STATIC
    STATIC과 같으나, 이 값은 다른 object에 대해서도 같은 predicate function이
    사용되는 경우, 먼저 cache된 predicate을 찾아서 있으면 그 값을 이용한다.
    STATIC의 경우는 다른 object 사이에서는 공유하지 않으며 같은 object에
    대해서만 cache된 값을 사용한다.
    - CONTEXT_SENSITIVE
    한 session에서 context가 변경되면 그때 predicate를 재 실행시킨다.
    WAS(web application server)를 사용하는 경우 connection pooling방법을
    기본적으로 사용하는대, 이 경우 하나의 session을 여러 사용자가 이어서
    교대로 사용하는 방식이 된다. 이 경우 middle tier단에서 context를 설정해
    주면 context가 변경될때마다 predicate를 새로 실행시켜 변경된 sysdate나
    session_user등의 값을 다시 계산하게 되는것이다.
    jdbc에서 context설정에 관한 예제는 metalink.oracle.com에서
    <Note 110604.1>에서 확인가능하다.
    - SHARED_CONTEXT_SENSITIVE
    context_sensitive와 동일하며, 단 shared_static과 마찬가지로 여러 object에
    대해서 같은 predicate을 사용하는 경우 다른 object에 대한 같은 predicate이
    cache되어 있는지를 먼저 살펴본다.
    존재하면 session private application context가 변경되기 전까지 그 predicate의
    결과를 그대로 사용한다.
    - DYNAMIC
    이 값이 default값이다. 즉, predicate function이나 시스템이나 환경에
    영향을 받는다고 판단하여 statement가 실행될때마다 매번 predicate function을
    재 실행하여 환경에 맞는 값을 return하여 준다.
    아래에서 sysdate 값에 따라 다른 결과를 return하게 되어 있는
    predicate을 이용한 예제를 통해 정확한 메카니즘을 확인한다.
    2. static_policy 및 policy_type의 value에 따른 policy function의 작동예제
    (a) STATIC_POLICY => TRUE and POLICY_TYPE => NULL
    (1) 기존에 pol1 policy가 존재하는 경우 다음과 같이 drop시킨다.
    SQL> exec DBMS_RLS.DROP_POLICY ('SCOTT', 'EMP','POL1');
    (2) 다음과 같이 predicate function을 scott user로 만들어둔다.
    SQL> create or replace function PREDICATE (obj_schema varchar2, obj_name varchar2)
    2 return varchar2 is d_predicate varchar2(2000);
    3 begin
    4 if to_char(sysdate, 'HH24') >= '06' and to_char(sysdate, 'MI')<'05' then
    5 d_predicate := 'ename = sys_context (''USERENV'' , ''SESSION'');
    6 else d_predicate := 'sal>=3000';
    7 end if;
    8 return d_predicate;
    9 end predicate;
    10 /
    (3) pol1을 새로 add시킨다.
    SQL> exec DBMS_RLS.ADD_POLICY ( -
    object_schema => 'SCOTT', -
    object_name => 'EMP', -
    policy_name => 'POL1', -
    function_schema => 'SCOTT', -
    policy_function => 'PREDICATE', -
    statement_types => 'SELECT', -
    static_policy => TRUE, -
    policy_type => NULL);
    (4) adams user에서 scott.emp를 조회해 본다.
    단 다음과 같이 scott.emp에 대한 select권한을 king에게 주어야 한다.
    SQL>grant select on emp to king;
    SQL>!date
    Thu Nov 24 14:01:13 EST 2005
    SQL> connect king/king
    SQL> select * from scott.emp;
    EMPNO ENAME JOB MGR HIREDATE SAL COMM
    DEPTNO
    7839 KING PRESIDENT 17-NOV-81 5000
    10
    5분이후가 되어 predicate function의 if조건을 만족하지 않아도,
    king user는 같은 값을 emp table에 대해서 return한다.
    SQL>!date
    Thu Nov 24 14:10:13 EST 2005
    SQL> connect king/king
    SQL> select * from scott.emp;
    EMPNO ENAME JOB MGR HIREDATE SAL COMM
    DEPTNO
    7839 KING PRESIDENT 17-NOV-81 5000
    10
    (b) STATIC_POLICY => FALSE and POLICY_TYPE => DBMS_RLS.DYNAMIC
    (1) 기존의 policy를 다음과 같이 drop시킨다.
    SQL> exec DBMS_RLS.DROP_POLICY ('SCOTT', 'EMP','POL1');
    (2) pol1을 새로 add시키는대 이대 static_policy와 policy_type을 다음과 같이
    변경한다.
    SQL> exec DBMS_RLS.ADD_POLICY ( -
    object_schema => 'SCOTT', -
    object_name => 'EMP', -
    policy_name => 'POL1', -
    function_schema => 'SCOTT', -
    policy_function => 'PREDICATE', -
    statement_types => 'SELECT', -
    static_policy => flase, -
    policy_type => dbms_rls.dynamic);
    (3) king user에서 조회해본다.
    predicate function은 위의 2-(a)에서 실행한 것을 그대로 사용한다.
    즉 (a)를 실행하지 않은 경우, 조회전에 (a)-(2)번을 실행해야 한다.
    SQL>!date
    Thu Nov 24 15:01:13 EST 2005
    SQL> connect king/king
    SQL> select * from scott.emp;
    EMPNO ENAME JOB MGR HIREDATE SAL COMM
    DEPTNO
    7839 KING PRESIDENT 17-NOV-81 5000
    10
    5분 이후가 되어 다시한번 king user에서 실행해본다.
    SQL>!date
    Thu Nov 24 15:10:13 EST 2005
    SQL> select * from scott.emp;
    EMPNO ENAME JOB MGR HIREDATE SAL COMM
    DEPTNO
    7788 SCOTT ANALYST 7566 19-APR-87 3000
    20
    7839 KING PRESIDENT 17-NOV-81 5000
    10
    7902 FORD ANALYST 7566 03-DEC-81 3000
    20
    RELATED DOCUMENTS
    <Note 281970.1> 10g Enhancement on STATIC_POLICY with POLICY_TYPE Behaviors
    in DBMS_RLS.ADD_POLICY Procedure
    <Note 281829.1> Evolution of Fine Grain Access Control FGAC Feature From 8i
    to 10g

    first you could use default column values, not a trigger, which is more expensive.
    if your apps already assumes full access to table to get max id ( another RT ), this is bad. Current RLS can not really help if you can not change the apps because of this flaw logic ( you can store the maxid anywhere, why scanning the whole table to find it )

  • [SOLVED] Dependency tracking

    Hello,
    I had some updates available yesterdays, among others:
    - libgadu,
    - mplayer,
    - gnutls.
    I didn't want to restart machine right away, so I upgraded only libgadu and mplayer. Then, when trying to start mplayer or kadu (which uses libgadu) a got an error about missing libgnutls.so.30. After full system update everything works fine, but I wonder why did dependency tracker allow such upgrade? Shouldn't gnutls be forced to upgrade along with libgadu and mplayer?
    cheers,
    awes
    Last edited by awes (2015-04-21 11:22:21)

    Please remember to mark the thread as solved https://bbs.archlinux.org/viewtopic.php?id=130309

  • Solution to allow users to specify which columns of a sql report to search

    Starting Point:
    1) You have an existing SQL Report.
    2) You want to provide functionality to search through the result set.
    Start -----
    1) add a text_item for searching PX_search where X is page number
    2) add a button which resubmits the page. Go
    3) You modify your query by adding the following to the end of the where clause.
    and (PX_SEARCH is null or instr(column_name1,PX_SEARCH) > 0 )
    4) So far so good but it only allows searches on 1 column, so you add a few other columns
    and (PX_SEARCH is null or instr(column_name1,PX_SEARCH) > 0 or instr(column_name2,PX_SEARCH) > 0 or instr(column_name3,PX_SEARCH) > 0 )
    Now when you enter some text if it is in any of the columns that row will be displayed.
    This can be good or bad depending on your requirement. lets say my users want to specify the column they are searching on.
    5)further enhancement
    i) add a LOV to your page which queries the all_users data dictionary view
    select column_name d, column_name r from all_users where table_name = 'MY_TABLE_NAME' and column_name not in ('COLUMN_NAME1,COLUMN_NAME2) order by column_name
    The idea here is to use the oracle data dictionary to get all the columns for your table(s) and ignore the columns you do not want.
    ii) add an item to your page e.g. PX_select_column which gets populated from the list of values.
    Now for each column you are going to allow a search on, the sql needs to be modified.
    Lets pretend that my firstcolumn is called member_id, my second column is called firstname and my third column is lastname
    Before we had this SQL
    (select * from table where 1=1)
    and (PX_SEARCH is null or instr(memberid,PX_SEARCH) > 0 or instr(firstname,PX_SEARCH) > 0 or instr(lastname,PX_SEARCH) > 0 )
    Remember we have added PX_SELECT_COLUMN which should contain what we have selected from the LOV.
    iii) So now we modify the query to be as follows:
    and (PX_SEARCH is null or decode(:PX_SELECT_COLUMN,'MEMBERID',instr(memberid,PX_SEARCH),0) > 0 or
    decode(:PX_SELECT_COLUMN,'FIRSTNAME',instr(firstname,PX_SEARCH),0) > 0 or
    decode(:PX_SELECT_COLUMN,'LASTNAME',instr(lastname,PX_SEARCH),0) > 0 )
    The user can now choose which column to filter their results on.

    Here is a basic one (http://apex.oracle.com/pls/otn/f?p=2230:1). You can select an object type and put in criteria for the object name like '%b%'. The SELECT statement is dynamically generated with only the pieces of the WHERE clause that are needed. You do not need all the DECODE and INSTR OR logic.
    The main part of this example is the computation of the SQL SELECT statement:
    DECLARE
      v_sql VARCHAR2(2000) := 'SELECT *'||CHR(10)||'  FROM USER_OBJECTS';
      v_and BOOLEAN := FALSE;
      v_where VARCHAR2(2000);
    BEGIN
      -- P1_OBJECT_TYPE has value of 'ALL' for '%'
      IF (:p1_object_type != 'ALL') THEN
        v_sql := v_sql || chr(10) ||
                 ' WHERE object_type = '''||:p1_object_type||'''';
        v_and := TRUE;
      END IF;
      IF (:p1_object_name IS NOT NULL) THEN
        IF (v_and) THEN
          v_sql := v_sql || chr(10) ||
                   '   AND object_name LIKE UPPER('''||:p1_object_name||''')';
        ELSE
          v_sql := v_sql || chr(10) ||
                   ' WHERE object_name LIKE UPPER('''||:p1_object_name||''')';
        END IF;
        v_and := TRUE;
      END IF;
      :p1_sql := v_sql;
      RETURN (v_sql);
    END;Mike

  • The newest version of iTunes is awful when it comes to Cloud syncing-file management. I'm constantly frustrated with what iTunes 'chooses to eliminate from my mobile device and settings aren't fine-grained enough to allow for real user control.

    I'm endlessly frustrated with iTunes Cloud syncing, something that was supposed to make lenjoying my music easier. I routinely find that, though itunes and podcasts have been split, iTunes arbitrairily removes music files or in progress podcast in favor of 'new' podcasts. The settings are just not fine-grained enough to allow true user control and so we are instead subjected to 'Apple knows best' protocols. I understand and appreciate the level of exacting control Apple excercises over their ecosystem, however, more and more often I see them tightening control over things that should be user control while dropping the ball on aesthetic desisions made in producing their own software (see the hideous pull down tab for iTunes to access Podcast, TV shows, Music, etc.
    I would like to see features like those in Mail and the Podcasting apps implemented in iTunes afor the management of content on mobile devices, for instance it would be great to swipe to delete files that you know longer want on your device, at both the album and song level. Another issues is the new pushiness of iRadio and iTunes Store, the app now seems to default to the iRadio page (versus the last page Albums, songs, etc. that the user was navigating, or in the instance of the iTunes Store push, if I doon't have all the tracks of an album i own on my mobile device 'complete my album' takes you to iTunes store rather than showing the 'cloud' download icon next to missing tracks. These are the tactics I expect from Google, not Apple (pushing commerce over quality user experience).
    Fix these things Apple, please.

  • How to pass the context from Portal to Database for fine grain access?

    Hi,
    I am developing an omniportlet and I need to pass on the context of the logged in user to the database so that when the user tries to access data in the omniportlet, he can see data relevant to him only. Does anyone know how to do that?
    I have set up a light weight user scott and also has a schema in the database by the same name (scott)..
    what I am trying is when the user logs in as scott in the portal site and runs an omniportlet, he should be dynamically be logged in to scott the schema so that the data visible to him can be restricted. Same should happen for other users as well.
    Does anyone know in which table in the PORTAL schema is this connection information stored, so that I can override it using some API..?
    Thanks,
    Abhi

    I had tried sending the user_name in the sql and that works fine. but my requirement is that the user should login to his schema and only his schema directly and automatically.. such that even if an omniportlet is created using some default schema, when user logs in he can access only the schema meant for him..
    e.g. While running the omniportlet when logged-in as user scott, he should be logged-in to scott schema in the database, so that the fine grain access can be enabled ..
    Edited by: user6386347 on Mar 12, 2009 12:15 PM

  • Fine-grained control with Magic Trackpad?

    One thing I find difficult with the Magic Trackpad is making very small adjustments to slider controls in apps such as image and audio editors. I'm referring to the sort of sliders that are sensitive to mouse scroll wheels.
    Aside from keeping a mouse connected to operate these controls, or going back and forth to System Preferences to change the tracking speed, are there any ways to do this more easily with a trackpad? For example, a utility that lets you switch to fine-grained movement with the trackpad when you hold down a certain key?

    you do not invalidate the session, but the session object is
    unavailable only on that page.That is my understanding of how this works.
    In effect it removes the implicit call to request.getSession(true) that every jsp makes to populate the variable "session"
    If I use the <c:url> tag on page 2 using a cookieless browser the link
    is still encoded with the session? Sorry, don't know that one.
    The <url> tag will still call response.encodeURL() of course.
    I'm not sure if it would pick up the presence of the sessionid or not though.
    The session is definitely still there.
    The cookie (if present) is obviously still there.
    The sessionId is sent as part of the request.
    Theoretically it SHOULD pick it up and encode it still if present. I've never tried it myself though.
    Good luck,
    evnafets

  • Mastering but losing my mind with a "gap" between 2 tracks which shouldn't be there. What is wrong?

    I have an album which I've been working on for a while and it's now all finished with the exception of one small glitch...
    Throughout the album I have a around 4 overlapping tracks, when burning the tracks to a disc, 3 out of 4 of the tracks crossover into the next track perfectly. 1 of them doesn't...
    My 1st method: Paste the 2nd Track over the end of the 1st Track, then cut the 2nd overlapped track and paste back over the original 2nd track, whilst saving over the now shortened 1st track... ( This, whilst not a great method, has never failed me in the past and worked on the the other overlapping tracks).
    So I realised this wasn't a great method so then tried method 2.
    My 2nd Method: Drop all the mixdowns into one waveform (in Edit view), and create Markers using the Marker List and F8, so that each track starts bang on the next .001 of a second.
    Again, for 3 out of the 4 this was fine, but for the other... I can still her the tiniest click!
    It's a click the listener will not notice, but it's a click that is killing me because the label putting out the CD is on me to get the final mix to them, but I won't submit it until this click has gone.
    Things I should note:
    1. When played in Winamp, there are no clicks. This is ONLY when burnt to a disc.
    2. I've used Adobe Audition 3.0 to burn the audio disc with no silence between tracks.
    3. I've also used Nero to burn the audio disc with no silence between tracks.
    4. I've used multiple computers/dvd burners to test this.
    5. I've used multiple brands of CD-rs.
    6. I'm very sure that there is not an actually cilck on the waveform.
    7. This is the 1st track leading into the 2nd track (I'm aware there is a 2 second gap before the 1st Track)
    8. I've played the burnt CD-r on my PC, my DVD player, my Computer at work, my car stereo.
    Please help me with this, it's driving me nuts as I've worked very hard and perfected the thing, and need to submit it very soon.
    Is there any software you would reccomed to split tracks which I should try?
    Thank you!

    CD tracks should not be starting on the nearest .001 of a second but 1/75 of a second. The CD standard is 75 frames per second. If tracks do not start on the nearest 1/75 of a second the audio will be filled out to the nearest one causing clicks at the junctions. Make sure that the Display Time Format is set to Compact Disc 75fps and that Snap to Frames is turned on.

  • Is there any way to find out the dependency information for column of view?

    Does Oracle provide some view / table / pl/sql pkgs to find out the dependency information for column of view ?
    For example, there are two table mytable1 (col1 varchar2(10), col2 date) & mytable2 (col1 varchar2(10), qty int), and there is one view myView as
    select mytable1.col1, col2, qty from mytable1 inner join mytable2 on mytable1.col1 = mytable2.col
    Can I get some information such as myView.col1 is come from mytable1.col, myView.col2 is come from mytable1.col2, myView.qty is come from mytable2.qty
    ?

    I can get the information about the columns list in table/view from ALL_TAB_COLUMNS table, but I wish to know the column in the view is come from which original table's column.
    Is there any way to find it out from Oracle meta data / through any PL/SQL packages ?

  • Permissions on a file change depending on which computer is being used

    I have a file that does not have the same permissions depending on which computer it is on.
    On three computers (one using OS 10.3.9, one using OS 10.3.7, and one using OS 10.4), in the get info panel, the owner is listed as the user of the computer and the first line states: You can read and write.
    One a fourth computer using OS 10.3.9, the same file shows up with owner listed as "nobody" and the first line in the get info panel states:
    You have no access.
    What is going on with that fourth computer? How can I get it to have the same ownership and permissions as the other three computers without having to manually go in and change these items? I use this computer to archive files and the archiving gets done automatically, i.e. without human intervention. Right now it's not working because there are numerous files with this ownership problem.
    Thanks,
    Sue Lange

    I'm not sure what you mean by using apple file sharing. I go to the "Go" menu. Find the computer on the network. Select "Connect to Server." Browse to find the computer. Select that computer. Sign in as "guest." The computer's public folder is then mounted on my desktop. I drag the files over to the mounted computer.
    I just tried to do it the opposite way (mount the original "from" computer on the "to" computer and drag the files into the public folder.) Most files work fine, but the files I'm having trouble with are not moving. They go through the motions of moving, but do not show up. These files have some sort of security attached to them from the originators. No one on site is the originator so we can't fix the problem by changing permissions. Again, everyone else is able to work with these files except the one computer.
    Thanks,
    Sue Lange

  • Coarse grained and fine grained

    I want to now the difference b/wn coarse grained and fine grained entity bean, please explain me with some example

    I think the name is self explanatory.However since u do not seem to be very clear i will try and explain.Suppose you have an person entity bean.There are essentially two ways to model the bean.
    Essentially u need to identify the sub parts of this person bean.It would have a first name, last name, address, ph.num,ssn and so on.If you were to model this as a fine grained bean in that case you would have all of these as parameters and would be passing the required parameters in the corresponding create method.However the Address portion can comprise of a state,city street,house number and pin.If you were to make this a separate entity which would present a local interface and use a value object to create and return this, this design would make it a coarse grained bean.Hope it makes some sense,if you require any other clarifications i would oblige.
    cheers
    sicilian

Maybe you are looking for