GRANT SELECT on a table to the user / role changes for the tab last_DDL

Hello

Is grant select (or any private object) to the user/role a DDL statement?

GRANT SELECT on a table to the user / role changes the last_DDL to the table.
1 > is this expected behavior?
2 > no way in which we can grant select on a table by another user, without changing the DDL? (for example create view).


The test is performed:

Prior to the issuance:


OBJECT_NAME CREATED TIMESTAMP LAST_DDL_TIME OWNER
------- ---------------------- ---------- ------------- --------------------
AR HZ_CUSTOMER_PROFILES 8 MAY 00 13 MARCH 13 2003-06 - 26:12:41:29



Grant statement:
GRANT SELECT ON "AR". "' HZ_CUSTOMER_PROFILES ' TO 'AR_VIEW ';

Note: AR_VIEW is a role, I tried granting also directly to the user.


After the grant:

OBJECT_NAME CREATED TIMESTAMP LAST_DDL_TIME OWNER
------- ---------------------- ---------- ------------- --------------------
AR HZ_CUSTOMER_PROFILES 8 MAY 00 21 MARCH 13 2003-06 - 26:12:41:29



Old thread, discuss whether Grant is DDL or not, but no documented conclusions.
( Re: Grant, revoke is DDL and DCL? )

Please help in the assessment above.

-Best regards,.
Mani

It's the DOF.

After all, this isn't DML, it implicitly committed and you cannot use it directly in PL/SQL: features of DDL. :-)

Tags: Database

Similar Questions

  • Access grant select on all tables in a diagram to another diagram

    Hi all

    I can grant select access on the tables of a schema (SAY USER1) to another (SAY USER2) by giving him a role and in turn grant this role to another scheme as below:

    FOR x IN (SELECT * from user_tables)
    LOOP
    RUN IMMEDIATELY "SELECT WE GRANT | x.table_name | "To < < role1 > > ';
    END LOOP;

    Role1 Grant User2;

    but my question is that suppose I create another table say "TEMP_TAB" in the scheme of USER1 after the execution of the block above user2 will be able to access the table TEMP_TAB. My guess is certainly not. If I'm wrong, I want a way to grant select on a table in the schema of user1 immediately as and when it is created to User2.

    Please suggest a solution.

    Thank you and best regards,
    Vipin Kumar Rai

    993280 wrote:
    Knani,

    but in this case the User2 can choose any table in any schema. I want only USER2 for the right to select for only User1 tables.

    Thank you
    Vipin

    Oh sorry. Misinterpreted your post. What you did is the right way to do it. You must add the select role privilege whenever you create a new table. There is no "SELECT the TABLE all THE" specific to a type of data user privilege.

  • creating user, visible tables on the tab tables sqldeveloper

    Hi all

    I want to create a user who can only select a schema from a prisoner by one user.


    Create user test identified by Test1ng;
    grant create session to test;
    Grant select on a.table1 to test;

    The new user will use sqldeveloper and needs the tables is visible in the tab tables, but after completing the steps above test user when using sqldeveloper will see all the tables in the tab tables.

    Is there way to grant select test user on the tables in the diagram with the visible tables during the user test uses sqldeveloper?

    Thanks in advance

    >

    Hello Hans,.

    as a test user, I am able to select the table using the prefix as below
    Select * from a.account;

    Well, then it is a problem of configuration of SQL Developer - maybe just restart it? Nothing of such a 'reboot' ;)

    Please mark the thread as answered here and move your question on the SQL Developer Forum
    If the problem persists.

    Paul...

  • Is it possible to create a shuttle component in Oracle ADF, where the available and selected lists are tables of the adf?

    Hi all


    We use JDeveloper Studio Edition Version 12.1.3.0.0 and deployed on GlassFish Server Open Source Edition 3.1.2.2 (build 5) and connect to the SQLServer database.


    Is it possible to create a shuttle component in Oracle ADF, where the available and selected lists are tables of the adf?



    I did a POC sample on it. I can share with you. I can't put in my dropbox because dropbox is blocked in my network. Share your email. I'll send the POC through

  • Granting of privileges of table on the tables users another

    Can someone tell me what a privilege must be granted to a user to be able to grant the insert/update/select/Delete/execute on an other users tables/packet?

    I thought that "grant any privilege" has been the only one to have... and - user I am using to grant privileges on the other scheme users this has however - I always get: ORA-01031: insufficient privileges when you try to run the grants.

    Any ideas what I'm doing wrong here?

    By default, a package runs under the privilege of the owner unless you specify the rights of authentication as long as the current user. The owner must have a direct grant of the object of all the privileges used and cannot inherit those privileges to a role.

    How the owner has the 'all purpose of grant privilege' which they have been granted? Or should you be run as the current user to their privileges.

    HTH - Mark D Powell.

  • Grant Select on sys.dba_role_priv to the user; error

    version 10204
    It's the user's request: Add: select sys.dba_role_priv to: ROLE vas_user;

    I was just wondering what I'm doing wrong? How to fix?

    SQL > grant Select on sys.dba_role_priv to vas_user;
    Grant Select on sys.dba_role_priv to vas_user
    *
    ERROR on line 1:
    ORA-00942: table or view does not exist

    I was just wondering what I'm doing wrong?

    incorrect spelling

    How to fix?

    Use the correct name

    SQL> desc dba_role_priv
    ERROR:
    ORA-04043: object dba_role_priv does not exist
    
    SQL> desc dba_role_privs
     Name                                                       Null?    Type
     ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- ------ ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
     GRANTEE                                                   VARCHAR2(30)
     GRANTED_ROLE                                                  NOT NULL VARCHAR2(30)
     ADMIN_OPTION                                                   VARCHAR2(3)
     DEFAULT_ROLE                                                   VARCHAR2(3)
    
  • Which granted select on a table and when?

    Hi all
    We are running Oracle 10 g. There are a few differences with an array of our production compared to development environments. The table on the development has also provided a grant and has also a synonym. My boss wants to know who was granted access to this table and when? I'm not a DBA. I asked our s/n, and he said that he doesn't think that Oracle keeps track of this type of information. Is it possible to follow these types of changes? Who created such synonym for this table and when? One last thing to add, is that checking is not turned on.


    Thank you for your comments,

    Seyed

    We can see when synonyms are created but not who created unless there is a check of all DDL

    SQL > select TIMESTAMP, CREATION, OWNER, LAST_DDL_TIME, OBJECT_NAME from dba_objects where type_objet = 'SYNONYM' and OBJECT_NAME ='-' and owner ='-';

    -Thank you

  • SELECT on a table in the INSERT statement uses the INDEX

    Hello world

    I have a strange problem with EA Oracle 10 g (64-bit) running on a Linux system. The situation is, I developed a Java program to migrate one client system to another. One of the steps in the migration fills a new table with the data from the old system. Given that the data on the old system structure is fundamentally different from that new, I have to check each time I read a line from the old system, if I have already created an entity on the new table, and if so, update certain attributes. The WHERE clause of this audit uses a key of the company indexed on the new table. The problem is now, that Oracle does not use the index on the key attribute of the company, but it makes table scans complete to select the line. As you can imagine, the lines first thousand or so go fast, but the amount increases, the program becomes slower and slower.

    If I do a "scan" when executing the migration program, Oracle change the execution plan and use the index on the attribute key and everything works fast and smooth. However, if I do the analysis on the empty table first, nothing changes (which I understand it perfectly, since there is nothing to analyze, at this point). By integrating a hint of 'INDEX' (table) in the statement SELECT does not change the full implementation plan (also table scans).

    Is it possible to change this behavior, in order to SELECT it uses the index of key business from the beginning?

    Greetings from Cologne,

    Thorsten.

    Published by: thkitz on 13.03.2012 18:27

    thkitz wrote:

    SELECT STATEMENT  ALL_ROWSCost: 2  Bytes: 76  Cardinality: 2
         7 TABLE ACCESS BY INDEX ROWID TABLE AIDATINT.PRVVSSCHADENKORRESPONDENZ Cost: 2  Bytes: 76  Cardinality: 2
              6 BITMAP CONVERSION TO ROWIDS
                   5 BITMAP OR
                        2 BITMAP CONVERSION FROM ROWIDS
                             1 INDEX RANGE SCAN INDEX AIDATINT.I_PRVVSSCHADENKORRESPONDENZ_1 Cost: 1
                        4 BITMAP CONVERSION FROM ROWIDS
                             3 INDEX RANGE SCAN INDEX AIDATINT.I_PRVVSSCHADENKORRESPONDENZ_2 Cost: 1  
    

    I would have thought that as a plan as possible. It is not a concatenation, is a btree/bitmap conversion.
    Allude to this plan you need / * + index_combine (table_alias index1 index2) * /.
    For 10g and later the index can be specified by name or by description

    I'm a bit puzzled why the plan changes after truncate - but maybe my comment about not cleared statistics is no longer true. It is easy enough to check if I'm right or wrong on your version of Oracle.

    Concerning
    Jonathan Lewis
    http://jonathanlewis.WordPress.com
    Author: core Oracle

  • Select from another table, when the query returns no result

    Hello

    I have a question where I'm supposed to retrieve the address of an account id-based billing. However, the table of billing may not have an address. There is a table of addresses that always has an address for an account. If the billing address exists, it should be used, so I can't use the address table. Is it possible in a select statement to query to the billing address and if it does not exist, use the address table.

    SELECT * FROM accounts a, b billings WHERE a.accountid = b.accountid

    Any help will be greatly appreciated.

    Thank you.

    user10407139 wrote:
    Hello

    I have a question where I'm supposed to retrieve the address of an account id-based billing. However, the table of billing may not have an address. There is a table of addresses that always has an address for an account. If the billing address exists, it should be used, so I can't use the address table. Is it possible in a select statement to query to the billing address and if it does not exist, use the address table.

    SELECT * FROM accounts a, b billings WHERE a.accountid = b.accountid

    Any help will be greatly appreciated.

    I think you need to explain more clearly if

    -you only have a couple of "billing" columns which is empty and in this case, you want to use the columns from the table 'accounts '.

    - or you have a join with another table that doesn't return data, for example a foreign key "address_id" "billing" is zero and therefore the join to other tables 'address' will return all the data

    In the first case, you have already been provided with some examples here, how to use NVL or similar functions to achieve, even if the first post first evaluates the information of 'accounts' and if it is white using information from "billing". According to your description you need the other way around. The second post a subquery recursive useless in my opinion.

    In the latter case, you should probably use an "outer" join so that the data in your table "bills" are returned, even if the join to another table is not at all the lines.

    SELECT
    NVL(AD1.ADDRESS_ATTR1, AD2.ADDRESS_ATTR1) as ADDRESS_ATTR1,
    NVL(AD1.ADDRESS_ATTR2, AD2.ADDRESS_ATTR2) as ADDRESS_ATTR2,
    NVL(AD1.ADDRESS_STREET, AD2.ADDRESS_STREET) as ADDRESS_STREET,
    ...
    FROM accounts a
    INNER JOIN billings b
    ON a.accountid = b.accountid
    LEFT OUTER JOIN address ad1
    ON b.address_id = ad1.address_id
    INNER JOIN address ad2
    ON a.address_id = ad2.address_id;
    

    In this way you pick up the address stored in the "invoices" table, if it existed, otherwise you pick up the address assigned to the "accounts" table I used an inner for the second address join join because you said that the account always has an assigned address.

    Kind regards
    Randolf

    Oracle related blog stuff:
    http://Oracle-Randolf.blogspot.com/

    SQLTools ++ for Oracle (Open source Oracle GUI for Windows):
    http://www.sqltools-plusplus.org:7676 /.
    http://sourceforge.NET/projects/SQLT-pp/

  • Split columns from the table to the tabs

    Hello world

    I want to create an application where I retrieve data from a database table and display divided into tabs.
    So I want tab1 to display columns 1 to 5, tab2 to display columns etc. from 6 to 10.

    How can I do?

    Thank you!

    user12169513,
    Here's a way to do it.

    Let's say you have col1, col2, col3, col4 in the table. Col1 is common, and you want to show col1, col2 on Tab1, Tab2 Col3 Col1 and Col1, Col4 on tab 3.

    1 create three pages, tell page 2, 3 and 4 have the queris as. Choose the position of the body region 3 (default)
    Select col1, col2 from... on Pag2
    Select col1, col3 from... on Pag3
    Select col1, col4... on Pag4
    2. next, create a list with three entries. Tab1 pointing to Page2, Tab2 pointing to page 3 and tab 3 on Page4
    3. on pages 2, 3 and 4, add a list region in Boby 01 or Breadcrump (anythign above 03) on the list created
    4. change the regions from the list and change the model override list to List of tabbed browsing

    The other way is to use the tabs pointing to the Pages 2,3,4.

    Kind regards

    PS: Its nice when I know he's one human being at the other end with a name

    Published by: Dominique on August 12, 2010 19:00

  • Line layout selection/evidence code table of the adf

    Hi all

    I use Jdev12c and you want to programmatically select a row in a table. It's the line should be highlighted and the graph of the child should also be updated to the selected line. If I can get one of these features that is also sufficient.

    I have DCIteratorBinding instance for the table, but do not receive good method/how to get there. The size of table is 20.

    Thank you!

    viewObject.setCurrentRow (row); did not work for me it turns that I greeted the multipleSelection on the table and this is the main reason for which even after refresh of the VO of the selection of some random lines in the main table is not removed even if detail table/chart refreshes to display the data corresponding to the first line of the main table.

    So I removed the selection of the main table (using following code) gives me the very view that when the page is loaded first time (i.e. no line selected in the child master and graph/table table were given corresponding to the first row in the main table).

            UIComponent component = JSFUtils.findComponentInRoot (tableId);
            If (component instanceof richeTableau) {}
                Table richeTableau = component (richeTableau);
                Set of rows RowKeySet = table.getSelectedRowKeys ();
                rowSet.clear ();
                System.out.println ("removed from the line selection table:" + tableId);
  • How to capture the event of selection of a table on the side line client (JavaScript)

    The example is:
    < af:table >
    < af:column >
    < af:outputText... >
    < af:clientListener... / >
    < /... >
    < /... >

    However, the text does not fill to the top of the cell. So, if I click on the on the empty area, the event handler is not called.
    I hope, even if I click on the empty area of the line, the event handler will be called.
    In fact, if I click on a row of a table at any location, including the empty area, the line becomes blue. How to capture this select event row on the client side?

    You can try file the client listener as a child under tag instead of the ?

    
    ...
    
    
    
    

    The above code should call a function in your js file called "handleTableDoubleClick", which, in turn, queued a ClientEvent that can be attached to a Backing Bean method. Something like:

    ...
        public void handleTableDoubleClick(ClientEvent ce) {
           //do something when the table is double clicked.
        }
    ...
    

    hope that helps

  • How to export select data from table in the file?

    Hello..

    Here's my query to select data in 2 tables and I join help call_id column: -.

    Select n.nbr_calling, n.nbr_called, c.tec, n.conversation_duration
    of albn_ngnsm_280110 n, albc_ngnsm_280110 c
    where c.call_id = n.call_id
    and c.route_to_arbor = 1;

    The problem is what is the query to export all the output in text files?


    Thank you
    Balleur

    Hello

    set echo off
    set heading off
    set pagesize 0
    set linesize 150
    
    spool D:\file.csv
    SELECT Query
    spool off
    

    Thank you
    Ankur

  • A table in the tab

    Hello. I have a table of cluster and its 20 elements inside. I want in a tab (page 1, page 2) show 10 first elements in page 1 and last 10 items in page-2 on the front panel.

    How can I do that.

    My dashboard cluster is attached.

    Thank you.


  • User to change for Torch 9800 blackBerry Smartphones

    I get a new phone myself and give my well-served Torch 9800 too my wife to replace the old Nokia E71. But what is the best way to change user to the phone? I'm not worried to leave all the data on the phone, but I want to change all e-mails, montages etc phone addresses.

    Whenever you give your phone to someone else, do a security wipe. In this way, it'll be as they get a new phone right out of the box without data left by you.

    I hope that helps you.

Maybe you are looking for

  • Satellite Pro M30 - some mistakes of color and pixel

    The last days I had some problems with the display screen. I had a few mistakes of color-mistakes and pixels. Colors erupt anywhere on the screen, icons disappear and if I move quickly around the screen (with her pinter) ex a document in Word (Office

  • is the app store down today?

    I noticed that I can not update the facebook app... icon next to the application turns... then returns to the icon "detected"... I thought it was just a simple bug... I tried to restart to device... and I also tried to delete and re install facebook.

  • Cannot find application in the store

    I am trying to download my football team Hungarian app, but the research says it can't find it, I got the app before, I have it on my ipod, but it can not find for ipad, why?

  • Remove product key

    I want to install windows xp professional on a desktop computer that I can put in the basement where we have a projector. The problem is that I live in a dorm, so my basement is shared with a few other people. I don't mind that other people using the

  • How can I get rid of the virus of the Platinum safe?

    How can I get the virus alive security Platinum out of my computer? (merged thread)