Need to grant DML privileges to all tables in few schemas
Hi,
I need to grant DML privileges to all tables in few schemas to a role. How can I achieve that?
I thought it's below syntax but it doesn't work. Please advice.
grant ALL ON ALL TABLES IN SCHEMA <Schema_name> TO <role_name>;Thanks,
Gangadhar
GR wrote:
Hi,
I need to grant DML privileges to all tables in few schemas to a role. How can I achieve that?
I thought it's below syntax but it doesn't work. Please advice.
grant ALL ON ALL TABLES IN SCHEMA <Schema_name> TO <role_name>;
There is no single command to grant privileges at that level. There are either ANY privileges or privileges on an object.
You can write a bit of code to generate and execute what you want, but you would have to rerun it if any new tables were created.
Similar Messages
-
Grant select only to all tables in certain schemas
need to create an oracle database user with 'select only' right to all tables in schema OM + OE ( Order Management), Inventory(INV) and AR ( Account Receivables)
apart from above suggestion dont forget to use to accomodate other schemas OM + OE ( Order Management), Inventory(INV) and AR ( Account Receivables);
where a.owner in ('OM','OE','AR','INV');
-- Raman. -
Friends,
As a SYSDBA or DBA user, How to grant DML permissions on a table
of one schema to another schema. Is it possible ?
Example:
SQL> connect sys as sysdba
Enter password: *********
Connected.
SQL> grant update on scott.emp to hr;
grant update on scott.emp to hr
ERROR at line 1:
ORA-01031: insufficient privilegesJameel,
If you're dba, you can work around this problem by changing the user password, make what you want with this user and set the old password.
SQL> create user toto identified by toto;
User created.
SQL> grant connect to toto;
Grant succeeded.
SQL> grant create table to toto;
Grant succeeded.
SQL> alter user toto quota 10M on system;
User altered.
SQL> conn toto/toto@H89UCBAC
Connected.
SQL> create table mytable as select * from user_objects;
Table created.
SQL> conn H89UCBAC/H89UCBAC@H89UCBAC
Connected.
--Because you don't know the password in clear, you will change it, but before you need to know the hash password for reinit later
SQL> select username, password
2 from dba_users
3 where username='TOTO';
USERNAME PASSWORD
TOTO D31E9FBC8F80202B
--Change the password
SQL> alter user toto identified by tmp_pwd;
User altered.
SQL> conn toto/tmp_pwd@H89UCBAC
Connected.
SQL> --Here, play, but be reasonnable, with toto connection user
SQL>
SQL> conn H89UCBAC/H89UCBAC@H89UCBAC
Connected.
--Change the password as at the begining of the operation
SQL> alter user toto identified by values 'D31E9FBC8F80202B'
SQL> /
User altered.
SQL> conn toto/toto@H89UCBAC
Connected.
SQL> Nicolas. -
What privilege is needed to browse all tables in a schema
I used SQLPlus to login to DB. When I clicked "table" in the left side window, no tables is shown. What privilege is needed to browse all tables in a schema?
Thanks.SQL*Plus is a command-line interface. There is no side window to click on. Perhaps you're talking about SQL Programmer? Or are you talking about some other tool?
What user are you logging in as? What user owns the objects? Do you just want to see that the tables exist? Or do you want to be able to see the data as well?
Justin -
Grant to all tables on my schema
I am fairly new to Oracle and I need to grant "select, update, insert on all mytalbes to roleone, then grant that role to all my users.
well, I have about 50 tables and 20 users.
So far the most automated way I have come up with is:
grant select, update, insert on table1 to role1;
then I after that, I do:
grant role1 to userone;
I am sure there is a way to do this in some sort of procedure. I dont have DBA privs. I own all of the tables on my schema and those are the ones that I need to grant the privs to users.
would you guys show me how to do this?
thanks a bunch!You have to grant the privileges on each table to the role and then grant the role to each user, so you need 70 GRANT statements. You can write some dynamic SQL to generate the grants, though
DECLARE
sqlStmt VARCHAR2(4000);
BEGIN
FOR x IN (SELECT * FROM user_tables)
LOOP
sqlStmt := 'GRANT SELECT, UPDATE, INSERT ON ' || x.table_name || ' TO role1';
EXECUTE IMMEDIATE sqlStmt;
END LOOP;
END;
DECLARE
sqlStmt VARCHAR2(4000);
BEGIN
FOR x IN (SELECT * FROM dba_users)
LOOP
sqlStmt := 'GRANT role1 TO ' || x.username;
EXECUTE IMMEDIATE sqlStmt;
END LOOP;
END;Justin
Distributed Database Consulting, Inc.
http://www.ddbcinc.com/askDDBC -
Grant select on all table of a schema to role
Hi , is it possible to grant select on all table on a schema to a role?
To grant SELECT on all tables of the current schema to particular role or user:
SELECT 'GRANT SELECT ON '||TABLE_NAME||' TO READ_ONLY_ROLE;' COMMAND
FROM (
SELECT TABLE_NAME
FROM ALL_TABLES
WHERE OWNER = (SELECT USER FROM DUAL)
Then copy and execute the result commands, eg:
GRANT SELECT ON DEPT TO READ_ONLY_ROLE;
GRANT SELECT ON EMP TO READ_ONLY_ROLE;
GRANT SELECT ON DEMO_USERS TO READ_ONLY_ROLE;
GRANT SELECT ON DEMO_CUSTOMERS TO READ_ONLY_ROLE;
GRANT SELECT ON DEMO_ORDERS TO READ_ONLY_ROLE; -
Can we export DATA from all tables in a schema?
Hi,
I have a question; Can we export all the DATA from all the tables present in the schema to any source (eigther CSV, TXT, DAt, etc..)?
Or
Can I have a PL/SQL procedure to display DATA from all Tables in a schema?
With Best Regards,
- NaveedHi,
This is pretty much what you need.
DECLARE
V_COUNT NUMBER;
v_sql varchar2(1000);
IN_OWNER_NAME VARCHAR2(100) := 'AP' ; -- SCHEMA NAME
TYPE T_COL_NAME is table of varchar2(1000) index by binary_integer;
v_col_tbl t_col_name;
BEGIN
FOR i in
(SELECT object_name
FROM dba_objects
WHERE owner = IN_OWNER_NAME
AND object_type ='TABLE'
and rownum < 2)
LOOP
v_sql := 'SELECT COUNT(*) FROM ' || i.object_name ;
EXECUTE IMMEDIATE v_sql INTO V_COUNT;
if v_count > 0 then
v_sql := 'SELECT * FROM ' || i.object_name ;
select column_name
bulk collect
into v_col_tbl
from DBA_TAB_COLUMNS
WHERE TABLE_NAME = I.OBJECT_NAME
AND OWNER = IN_OWNER_NAME;
-- start selecting the column and exporting using the column names selected.
end if;
if v_col_tbl.count > 0 then
for i in v_col_tbl.first .. v_col_tbl.last
loop
DBMS_OUTPUT.PUT_lINE(v_col_tbl(i));
end loop;
end if;
DBMS_OUTPUT.PUT_lINE( i.object_name || '-' || v_count);
END LOOP;
END;
- Ronel -
All columns of all table in one schema
Hi
All,
Oralce 10.2.0.3
I want to count all columns in all the table in one particular schema.
How can I do that?
which view i should use to count all cloumns of all tables in particular schema?
Thanksvishal patel wrote:
we needed for our data conversion project..I don't know how you'll use the number of columns in all a schema for data conversion. Some columns are duplicated (e.g. PK/FK), should they really count for two ?
A data conversion means you should actually know what are the columns used for, not how many they are.
one more question that count include hidden columns
what is hidden column used for ? I can not see those columns in actual table.See here an example :
Re: Difference btwn user_tab_cols & user_tab_columns
Nicolas. -
Program (PL/SQL) for count the registers of all tables in a schema
Hi...
I create a little program , for count the registers of all tables in the schema...
If you need , send me your email...
Atte
HectorHi,
You can create a script by yourself by executing the script mentioned below:
Connect as sys or system....
SQL> spool test.sql
SQL> select 'select count(*) from '||owner||'.'||table_name||';' from dba_tables;
SQL> spool off;
Hope this helps.
Regards,
-Praveen.
http://myracle.wordpress.com -
How to delete all rows in all tables of a schema in Oracle?
Hi all,
I want to delete all records of all tables of a schema and I think there should be some statement for this but I don't know how?
may you help?
Edited by: user8105261 on Nov 25, 2009 11:06 PMuser8105261 wrote:
Hi all,
I want to delete all records of all tables of a schema and I think there should be some statement for this but I don't know how?
may you help?
Edited by: user8105261 on Nov 25, 2009 11:06 PMA typical way to reset a schema (e.g. to recreate a schema on the test database) is totally different.
1) Drop the user
2) recreate the user including table scripts from
2a) your version control system
2b) from a export dumpfile using the "nodata" option while importing -
Droping all tables in a schema
how to drop all tables in a schema with out logging in that schema and having logged in as sys user?
Thanks in advance
Edited by: Prasanna.N on May 17, 2010 11:48 PMPrasanna.N wrote:
Hi,
i get this error
ERROR at line 5:
ORA-06550: line 5, column 9:
PLS-00103: Encountered the symbol "end-of-file" when expecting one of the
following:
begin case declare end exception exit for goto if loop mod
null pragma raise return select update while with
<an identifier> <a double-quoted delimited-identifier>
<a bind variable> << close current delete fetch lock insert
open rollback savepoint set sql execute commit forall merge
pipe
when giving
begin
for t in (select table_name from dba_tables where owner = 'SCOTT')
loop
execute immediate 'drop table SCOTT.' || t.table_name || 'purge';
end loop;
/I just wrote for loop, of course you have to write inside begin..end block:
begin
for t in (select table_name from dba_tables where owner = 'SCOTT')
loop
execute immediate 'drop table SCOTT.' || t.table_name || ' purge';
end loop;
end;
/ -
Grant select on all tables of a schema
I need to grant select on all tables (over 200 tables) of a schema to other users. Are there any SQL syntax to do this?
Thanks!Execute the following script, modify it for your environment:
Script
Accept from_owner char prompt 'Grant from user:'
Accept to_user char prompt 'grant to user:'
set head off;
set lines 300;
set pages 0;
set termout off;
set feedback off;
set head off;
set verify off;
spool d:\temp\grant.sql
select 'grant select on &from_owner..'||
table_name||
' to &to_user;'
from dba_tables
where owner=upper('&&from_owner');
spool off;
set head on;
set pages 24;
set termout on;
set feedback on;
set head on;
@d:\temp\grant.sqlExecution example:
system@DBA> @d:\temp\grants.sql
Grant from user:scott
grant to user:ejemplo
Grant succeeded.
Grant succeeded.
Grant succeeded.
Grant succeeded.
Grant succeeded.
Grant succeeded.
Grant succeeded. -
Need to Audit ALTER, DROP or TRUNCATE on All Tables in a Schema
Hello,
I need to audit any ALTER, DROP or TRUNCATE on all tables in the "X" schema including operations done by the "X" account.
Oracle Version = 11g Release 11.1.0.6.0
audit_sys_operations = TRUE
audit_trail = XML, EXTENDED
Thanks!Sky13 wrote:
Hi Srini;
After rereading my last post I have to apologize for being obnoxious. I have been trying:
No apology is necessary - you are not doing me any favors ;-)
audit alter table; This I get "Audit succeeded" Good - this means that any ALTER TABLE command issued by any user, whether the command is successful or not, will be logged.
audit truncate table; This I get "ORA-00956: missing or invalid auditing option" I do not have access to a database currently, so cannot verify what is wrong - it looks correct - pl verify syntax.
>
I see them both in the documentation you referenced and in another places. I am certain I am missing something.
Thanks for the help!!!! and again I apologize.You are welcome. I would suggest you experiment in a test database first :-)
HTH
Srini -
Need to update one column of all table in that particular schema
hi all,
i am using db10g.
my task is to update one particular column's value of all the table in that schema.
to acheive the above
do i have to write update statement for each table or is there any way to do it in bulk?
i hope my question make sense.
Thanks..Hi karthick,
I want to know something which is not related to this thread .
How to include formatted post while replying to thread .
I know using will be used format code before posting . But how can we do it for posted message .
I hope you understand my question .
Thanks in advance . -
Deleting the contents of all tables in a schemas
hi ,
can someone tell me if there is a way of deleting the contents of all tables , without dropping any.because the schema is big and just want to empty all tables at the same time.
thanks in advance.Hi,
>>Will they be enabled after running the script?
Well, of course they need to be re-enabled ... don't you think?
SQL> create table a (id number primary key);
Table created.
SQL> create table b (id number constraint fk_b_a references a);
Table created.
SQL> select constraint_name,status from user_constraints where table_name='B';
CONSTRAINT_NAME STATUS
FK_B_A ENABLED
SQL> truncate table a;
truncate table a
ERROR at line 1:
ORA-02266: unique/primary keys in table referenced by enabled foreign keys
SQL> alter table b disable constraint fk_b_a;
Table altered.
SQL> truncate table a;
Table truncated.
SQL> select constraint_name,status from user_constraints where table_name='B';
CONSTRAINT_NAME STATUS
FK_B_A DISABLED
SQL> alter table b enable constraint fk_b_a;
Table altered.
SQL> select constraint_name,status from user_constraints where table_name='B';
CONSTRAINT_NAME STATUS
FK_B_A ENABLEDCheers
Legatti
Maybe you are looking for
-
Have a mail merge initiated in Access that creates a Merge document. When I save the document as newXXX.doc..........., doc is saved but internal contents of oldXXX.doc are also changed to match last saved document. Help please.
-
my board is in the sig, and i wanted to get the new BIOS version for it, because it says in the specs sheet, that it reads the temps correctly now. what does that mean? what are the temp differences between the 1.9 and the 2.3 BIOS? and, could it be
-
Unable to update DPS in InDesign CC
When I try to access the Folio Builder in InDesign CC it says "A software update is required to use Digital Publishing Suite. Please go to the Help menu and select Updates to get the required software." When I go to help or Creative Cloud update it s
-
What is the best way to make a clickable grid
What would be the best way to make a clickable area that can differentiate between discrete parts of the area when clicked on. In other words, instead a having multiple buttons in a row that the user can click on, is there a way to have an area that
-
BOR events as user-exits?
Hi! Is it possible to use BOR events as enhancements (user-exits) in ABAP? For example, the BOR object "BUS1178001 - Material" has event "Material.Created". I suppose this event is raised when an article was created in Material Master. Is it possible