About dropping tables
Hi,
When I was reading the features of Oracle 9i, I came across a new feature that is, "We can get the dropped table details" .. But I havent understood what exactly is that ... Can anyone explain about this please ??
Regards
krichards,
If you could edit that link to be shorter, this thread would be a lot easier to read ;)
Use:
[url=some_url]text to display
Similar Messages
-
A table has been dropped on a test system (Oracle 10g). Is there a way to find out who/when the table was deleted or any other hints?
- I have checked flashback_transaction_query but I could not find the table. It looks like the undo space was not big enough!?
- select * from sys.aud$ where OBJ$NAME = 'TABLE_XYZ'; shows only the satetement from the table creation
Thanks.Is there a way to find out who/when the table was deleted or any other hints?To find out "who/when", either
* you should have Auditing enabled or
* at the database level you should enable supplemental logging and use log miner on your redo logs.
Regards -
Hi
i have Oracle 10g R2 i'm facing one problem, that there is a table which has been dropped it's in Recycle Bin there is many information about dropped table like Dropped time, user and etc..
But i want to know the Terminal or Machine name which the drop command was issued.
Please guide me in this regard.
NasirHi Masir,
For DDL auditing, consider a DDL trigger:
http://www.dba-oracle.com/t_ddl_triggers.htm
Using the Data Definition Language (DDL) triggers, the Oracle DBA can automatically track all changes to the database, including changes to tables, indexes, and constraints. The data from this trigger is especially useful for change control for the Oracle DBA.
DDL triggers execute every time a DDL statement is executed, and adds new entries to your new table, as shown below:
connect sys/manager
create or replace trigger
DDLTrigger
AFTER DDL ON DATABASE
BEGIN
insert into
perfstat.stats$ddl_log
user_name,
ddl_date,
ddl_type,
object_type,
owner,
object_name
VALUES
ora_login_user,
sysdate,
ora_sysevent,
ora_dict_obj_type,
ora_dict_obj_owner,
ora_dict_obj_name
END;
HTH . ..
Don Burleson -
Hello,
I'm currently tring to drop a table using a process trigered by a button click
Icreated my button and also a "PL/SQL process" and I put
DROP TABLE &P0_TABLE_NAME. CASCADE CONSTRAINTS;
inside field "source" with ticking the checkbox "Do not validate PL/SQL code (parse PL/SQL code at runtime only)."
But when a click on the button I have the following error
ORA-06550: line 1, column 7: PLS-00103: Encountered the symbol "DROP" when expecting one of the following: begin case declare 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
Error Error while dropping table
OK
Do anyone have a clue about this ?
Debug trace is
A C C E P T: Request="Purge"
0.00: Metadata: Fetch application definition and shortcuts
0.00: alter session set nls_language="AMERICAN"
0.00: alter session set nls_territory="AMERICA"
0.00: ...NLS: Set Decimal separator="."
0.00: ...NLS: Set NLS Group separator=","
0.00: ...NLS: Set date format="DD-MON-RR"
0.00: ...Setting session time_zone to +02:00
0.00: NLS: wwv_flow.g_flow_language_derived_from=0: wwv_flow.g_browser_language=en-us
0.00: Fetch session state from database
0.01: ...Check session 2289784661666743 owner
0.01: ...Check for session expiration:
0.01: ...Metadata: Fetch Page, Computation, Process, and Branch
0.01: Session: Fetch session header information
0.01: ...Metadata: Fetch page attributes for application 121, page 2
0.01: ...Validate item page affinity.
0.03: ...Validate hidden_protected items.
0.03: ...Check authorization security schemes
0.03: Session State: Save form items and p_arg_values
0.03: ...Session State: Save "P0_TABLE_NAME" - saving same value: "STATPHI_595730051"
0.04: ...Session State: Save "P2_TABLE_NAME" - saving same value: "STATPHI_595730051"
0.04: ...Session State: Save "P2_TYPE" - saving same value: "2"
0.04: ...Session State: Save "P2_CALENDAR" - saving same value: "PA"
0.04: ...Session State: Save "P2_FILE_NAME" - saving same value: ""
0.04: Processing point: ON_SUBMIT_BEFORE_COMPUTATION
0.04: Branch point: BEFORE_COMPUTATION
0.04: Computation point: AFTER_SUBMIT
0.04: Tabs: Perform Branching for Tab Requests
0.04: Branch point: BEFORE_VALIDATION
0.04: Perform validations:
0.04: Branch point: BEFORE_PROCESSING
0.04: Processing point: AFTER_SUBMIT
0.04: Item button "P2_PURGE_TABLE" pressed process.
0.04: ...Process "DROP TABLE": PLSQL (AFTER_SUBMIT) DROP TABLE &P0_TABLE_NAME. CASCADE CONSTRAINTS;
0.06: Encountered unhandled exception in process type PLSQL
0.06: Show ERROR page...
0.06: Performing rollback...
----Hi user631592 ;-)
You can't used directly a DDL statment.
But you can use an EXECUTE IMMEDIATE in your process.
SO
BEGIN
EXECUTE IMMEDIATE ' DROP TABLE STATPHI_595730051';
END;
Regards -
Question about temporary tables and imports.
Hello everybody.
Interesting one this. We have an application that uses global temporary tables. We refresh live to test using import of the application schema. I noticed when doing this yesterday that the temporary tables were being recreated in test as perminant rather than temporary.
Is there a reason for this? Has anyone come across this before? Is there a way around it (apart from manual checking)?
Many thanks
RupCould you specify how you found out that it is coming in as permanent?
I believe exp/Imp will export and import it is Temporary table. I have just done a simple test to check and it works fine;
Here is my test log:
SQL> connect scott
Enter password:
Connected.
SQL>SQL> CREATE GLOBAL TEMPORARY TABLE test_global
2 (startdate DATE,
3 enddate DATE,
4 class CHAR(20))
5 ON COMMIT DELETE ROWS;
Table created.
SQL> select table_name,temporary from user_tables where table_name='TEST_GLOBAL';
TABLE_NAME T
TEST_GLOBAL Y
SQL> select table_name,temporary from user_tables;
TABLE_NAME T
DEPT N
EMP N
BONUS N
SALGRADE N
TEST_GLOBAL Y
SQL> exit
Disconnected from Oracle Database 10g Enterprise Edition Release 10.2.0.2.0 - Production
With the Partitioning, Oracle Label Security, OLAP and Data Mining Scoring Engine options
C:\Documents\dbmsdirect\Testing\global>exp
Export: Release 10.2.0.2.0 - Production on Wed Feb 20 12:18:45 2008
Copyright (c) 1982, 2005, Oracle. All rights reserved.
Username: scott
Password:
Connected to: Oracle Database 10g Enterprise Edition Release 10.2.0.2.0 - Production
With the Partitioning, Oracle Label Security, OLAP and Data Mining Scoring Engine options
Enter array fetch buffer size: 4096 >
Export file: EXPDAT.DMP > test_global
(2)U(sers), or (3)T(ables): (2)U > t
Export table data (yes/no): yes >
Compress extents (yes/no): yes >
Export done in WE8MSWIN1252 character set and AL16UTF16 NCHAR character set
server uses AL32UTF8 character set (possible charset conversion)
About to export specified tables via Conventional Path ...
Table(T) or Partition(T:P) to be exported: (RETURN to quit) > test_global
. . exporting table TEST_GLOBAL
Table(T) or Partition(T:P) to be exported: (RETURN to quit) >
Export terminated successfully without warnings.
C:\Documents\dbmsdirect\Testing\global>sqlplus /nolog
SQL*Plus: Release 10.2.0.2.0 - Production on Wed Feb 20 12:19:50 2008
Copyright (c) 1982, 2005, Oracle. All Rights Reserved.
SQL> connect scott
Enter password:
Connected.
SQL> drop table test_global purge;
Table dropped.
SQL> exit
Disconnected from Oracle Database 10g Enterprise Edition Release 10.2.0.2.0 - Production
With the Partitioning, Oracle Label Security, OLAP and Data Mining Scoring Engine options
C:\Documents\dbmsdirect\Testing\global>imp
Import: Release 10.2.0.2.0 - Production on Wed Feb 20 12:20:19 2008
Copyright (c) 1982, 2005, Oracle. All rights reserved.
Username: scott
Password:
Connected to: Oracle Database 10g Enterprise Edition Release 10.2.0.2.0 - Production
With the Partitioning, Oracle Label Security, OLAP and Data Mining Scoring Engine options
Import file: EXPDAT.DMP > test_global.DMP
Enter insert buffer size (minimum is 8192) 30720>
Export file created by EXPORT:V10.02.01 via conventional path
import done in WE8MSWIN1252 character set and AL16UTF16 NCHAR character set
import server uses AL32UTF8 character set (possible charset conversion)
List contents of import file only (yes/no): no >
Ignore create error due to object existence (yes/no): no >
Import grants (yes/no): yes >
Import table data (yes/no): yes >
Import entire export file (yes/no): no > yes
. importing SCOTT's objects into SCOTT
. importing SCOTT's objects into SCOTT
Import terminated successfully without warnings.
C:\Documents\dbmsdirect\Testing\global>sqlplus /nolog
SQL*Plus: Release 10.2.0.2.0 - Production on Wed Feb 20 12:22:44 2008
Copyright (c) 1982, 2005, Oracle. All Rights Reserved.
SQL> connect scott
Enter password:
Connected.
SQL>
SQL> select table_name,temporary from user_tables;
TABLE_NAME T
DEPT N
EMP N
BONUS N
SALGRADE N
TEST_GLOBAL Y
SQL> insert into TEST_GLOBAL values (sysdate,sysdate,'test1');
1 row created.
SQL> select * from TEST_GLOBAL;
STARTDATE ENDDATE CLASS
20-FEB-08 20-FEB-08 test1
SQL> commit;
Commit complete.
SQL> select * from TEST_GLOBAL;
no rows selected
SQL> select table_name,temporary from user_tables where table_name='TEST_GLOBAL';
TABLE_NAME T
TEST_GLOBAL Y
SQL> -
DROP TABLE works through SSMS but not via T-SQL Query
Hello All,
I am trying to drop a number of tables (1,000+) in a particular database by scripting the actions in T-SQL. When I run the query I get error 3701 on every table which points to a permissions issue. However, I am able to delete tables one by one using
the tree-view in the SSMS Object Explorer.
1. I have tried starting query sessions with both the DBO of the database and the SA account to no avail. (Both had the sysadmin role when I tried.)
2. Both the DBO account and the SA account are able to drop tables using SSMS Object Explorer.
Do I need a specific GRANT of permissions to use T-SQL versus SSMS or am I missing something even more fundamental?
TIA, Simon
<code>
DECLARE @Company VARCHAR(max),
@ID VARCHAR(max),
@NAME VARCHAR(max),
@TABLE_CATALOG VARCHAR(max),
@NAV_DATABASE VARCHAR(max),
@TABLE_NAME VARCHAR(max),
@STATEMENT VARCHAR(max),
@OBJECT_NAME VARCHAR(max),
@OBJECT_NAME_BARE VARCHAR(max),
@OBJECT_TYPE VARCHAR(max);
SET @TABLE_CATALOG = 'NAV_PENTA_TEST_GAAP';
SET @NAV_DATABASE = @TABLE_CATALOG
IF @TABLE_CATALOG <> DB_NAME()
BEGIN
DECLARE @ERRORMSG VARCHAR(max);
SET @ERRORMSG = 'You are not in the correct database. You specified ' + @TABLE_CATALOG + ' but you are currently in a session for ' + db_name();
RAISERROR(@ERRORMSG, 18, 1);
RETURN;
END;
-- To hold the object names (tables) from Navision
CREATE TABLE #NavisionObjects
[CompanyName]
VARCHAR(max),
[ID] VARCHAR(max),
[Name]
VARCHAR(max),
[TABLE_NAME]
VARCHAR(max)
-- To hold the object names (tables) from SQL only
CREATE TABLE #NavisionSQLObjects
[TABLE_NAME]
VARCHAR(max)
-- Holds the list of dependent objects
CREATE TABLE #DependentObjects
[name] VARCHAR(max),
[type] VARCHAR(max)
WITH T AS (
SELECT [Company Name],[ID],[Name],[Company Name]+'$'+[Name] AS TABLE_NAME
FROM [Object]
WHERE [Name] like '%IT IS%' AND [Company Name]>''
UNION ALL
SELECT [Company Name],[ID],[Name],[Name] AS TABLE_NAME
FROM [Object]
WHERE [Name] like '%IT IS%' AND [Company Name] IN ('',' ')
INSERT INTO #NavisionObjects SELECT [Company Name],[ID],[Name],[TABLE_NAME] FROM T;
UPDATE #NavisionObjects SET TABLE_NAME = TABLE_NAME+ID WHERE ID LIKE '1%';
INSERT INTO #NavisionSQLObjects
SELECT TABLE_NAME from INFORMATION_SCHEMA.TABLES
WHERE TABLE_CATALOG = @TABLE_CATALOG AND TABLE_NAME LIKE '%IT IS%' AND TABLE_TYPE='BASE TABLE';
--SELECT * FROM #NavisionObjects where CompanyName like 'E15%' order by TABLE_NAME;
--SELECT * FROM #NavisionSQLObjects where TABLE_NAME like 'E15%' order by TABLE_NAME;
DECLARE cTables CURSOR FOR SELECT A.CompanyName,A.ID,A.[TABLE_NAME] FROM #NavisionObjects A
INNER JOIN #NavisionObjects B ON B.[TABLE_NAME]=A.[TABLE_NAME]
OPEN cTables;
FETCH NEXT FROM cTables INTO @Company,@ID,@TABLE_NAME;
WHILE (@@FETCH_STATUS = 0)
BEGIN
PRINT 'Storing dependencies for [' + @TABLE_NAME + ']';
BEGIN TRY
INSERT INTO #DependentObjects
EXEC sp_depends @TABLE_NAME;
END TRY
BEGIN CATCH
PRINT 'Could not get dependencies for table [' + @TABLE_NAME + ']';
END CATCH
FETCH NEXT FROM cTables INTO @Company,@ID,@TABLE_NAME;
END
CLOSE cTables;
Drop dependent objects first so that table drops are less likely to fail.
DECLARE cdo CURSOR FOR SELECT [Name],[Type] FROM #DependentObjects;
OPEN cdo;
FETCH NEXT FROM cdo INTO @OBJECT_NAME, @OBJECT_TYPE;
WHILE (@@FETCH_STATUS = 0)
BEGIN
BEGIN TRY
SET @OBJECT_NAME_BARE =
CASE
WHEN CHARINDEX('dbo',@OBJECT_NAME) = 1
THEN RIGHT(@OBJECT_NAME,LEN(@OBJECT_NAME)-4)
ELSE @OBJECT_NAME
END;
SET @STATEMENT = 'DROP ' + @OBJECT_TYPE + ' [' + @OBJECT_NAME_BARE + ']';
PRINT @STATEMENT;
EXEC sys.sp_sqlexec @STATEMENT;
END TRY
BEGIN CATCH
PRINT 'Could not DROP object [' + @OBJECT_NAME + '] of type ' + @OBJECT_TYPE + ', SQL Error ' + CAST(@@ERROR AS VARCHAR(max));
END CATCH
FETCH NEXT FROM cdo INTO @OBJECT_NAME, @OBJECT_TYPE;
END
CLOSE cdo;
DEALLOCATE cdo;
OPEN cTables;
FETCH NEXT FROM cTables INTO @Company,@ID,@TABLE_NAME;
WHILE (@@FETCH_STATUS = 0)
BEGIN
PRINT 'Removing [' + @TABLE_NAME + ']' ;
BEGIN TRY
SET @STATEMENT = 'TRUNCATE TABLE dbo.[' + @TABLE_NAME + ']';
PRINT @STATEMENT;
EXEC sys.sp_sqlexec @STATEMENT;
END TRY
BEGIN CATCH
PRINT 'Could not truncate table [' + @TABLE_NAME + ']';
END CATCH
BEGIN TRY
SET @STATEMENT = 'DROP TABLE dbo.[' + @TABLE_NAME + ']';
PRINT @STATEMENT;
EXEC sys.sp_sqlexec @STATEMENT;
BEGIN TRY
SET @STATEMENT = 'DELETE FROM [Object] WHERE [Company Name] = ' + CHAR(39) + @Company + CHAR(39) + ' AND [ID] = ' + CHAR(39) + @ID + CHAR(39) + ' AND [TABLE_NAME] = ' + CHAR(39) +
@TABLE_NAME + CHAR(39) ;
EXEC sys.sp_sqlexec @STATEMENT;
print @STATEMENT;
END TRY
BEGIN CATCH
PRINT 'Could not Delete Object [' + @TABLE_NAME + '], from Object table, SQL Error ' + CAST(@@ERROR AS VARCHAR(max));
END CATCH
END TRY
BEGIN CATCH
PRINT 'Could not DROP table [' + @TABLE_NAME + '], SQL Error ' + CAST(@@ERROR AS VARCHAR(max));
END CATCH
FETCH NEXT FROM cTables INTO @Company,@ID,@TABLE_NAME;
END
CLOSE cTables;
DEALLOCATE cTables;
DROP TABLE #DependentObjects;
DROP TABLE #NavisionObjects;
DROP Table #NavisionSQLObjects;
</code>3701 = ...does not exist or you don't have permission.
Most of the time it means the former. So there are probably some problems in your DROP TABLE statements. Since there is a whole lot about Navision in the script, I decline from trying to figure out what. But I encourage you to study the PRINT statements.
I think that it would be a good idea to include the schema name, in cases these tables are not in dbo after all.
Note: rather than writing:
SET @STATEMENT = 'DROP ' + @OBJECT_TYPE + ' [' + @OBJECT_NAME_BARE + ']';
write:
SET @STATEMENT = 'DROP ' + @OBJECT_TYPE + quotename(@OBJECT_NAME_BARE)
Somewhat briefer. And it works also when the object name includes a right bracket.
sp_sqlexec is undocumented, use sp_executesql instead.
Erland Sommarskog, SQL Server MVP, [email protected] -
Hellow Friends,
I want to know when we drop the table, the indexes created on it does not drop with it. Offcourse I know the indexes which are created when we give constraints on columns drops.
Have you got my point, I am talking about those indexes which are created by us time to time according to our needs.
Thankyou
SumeetHellow Armold,
I tried
drop table <table_name>;
ThankYou
Sumeet -
Dropping tables in a specified user where in i dont know the SYS privilege
Hi,
I have 10 users with each user containing about 120 tables, but i want to drop all the tables without dropping the users and im working on a testing database where in i only have access to ALL_USERS...
Can anyone help me in this regard......
Thanks
- SriOk, I'll try to be clearer.
in SQL*Plus, first enter the line:
sql> spool drop_tables.sql;
then enter the query as above. This should output a load of lines which read 'drop table owner.table_name; and the last line will be row count.
Then issue the command:
sql> spool off;
you should then see that a file has been created on your filesystem called drop_tables.sql. Take a look inside and it will contain lots of 'drop table' commands.
return to SQL*Plus and run that script:
mysql> @drop_tables.sql
when you are SURE that you are happy with what has been dropped, issue the COMMIT;
if you are not happy, issue a ROLLBACKl
regards
James -
Hello
We got some strange behavor when we trying to dynamicaly create tables in Oracle 8.1.6 trought JDBC.
before creating new table I check that table already exists and in this case drop existing one.
after that I create table with name similiar to dropped table.
Ooops - table still exist. Oracle throw SQLException.
I we tried to commit after drop statement (i know that DROP is DDL) but result the same.
I we got no idea about origin of this problem.
if anybody solve similiar problem or have clue please response.
Thanks in advance.Ok it may look somewhat complex...
for ( Iterator iter = queries.iterator(); iter.hasNext(); ) {
db_statement = null;
EStatement statement_to_execute = (EStatement)iter.next();
try {
if (statement_to_execute.getStatement().startsWith("CREATE TABLE") ) {
db_statement = db_connection.prepareStatement("SELECT table_name from user_tables where table_name = 'SSQB_ESR_RESULT_"+session.ID+"'");
ResultSet rset = db_statement.executeQuery();
boolean exists = rset.next(); // this mean that table exists
db_statement.close();
if (exists) {
db_statement = db_connection.prepareStatement("DROP TABLE SSQB_ESR_RESULT_"+session.ID);
db_statement.executeUpdate();
db_statement.close();
db_statement = db_connection.prepareStatement(reportMD.generateCreateSQL(session.ID)); // there thrown SQLException table with this name already exists
db_statement.executeUpdate();
db_statement.close();
} else { // not DDL statement
} -
Drop table if exists in sql statement
Oracle: 10G
Is there a way to check if table exist and then only drop table. Something like:
drop table (select table_name from user_tables where lower(table_name) = 'o2i_filing_dest')As already suggested, you could e.g. use an anonymous PL/SQL block as part of your SQL script, e.g. something like that:
set echo on
spool <your_log_file>
WHENEVER SQLERROR EXIT FAILURE
DECLARE
PROCEDURE EXEC_DONT_FAIL( P_CMD IN VARCHAR2 ) IS
e_table_or_view_does_not_exist exception;
pragma exception_init(e_table_or_view_does_not_exist, -942);
e_type_does_not_exist exception;
pragma exception_init(e_type_does_not_exist, -4043);
e_sequence_does_not_exist exception;
pragma exception_init(e_sequence_does_not_exist, -2289);
BEGIN
EXECUTE IMMEDIATE P_CMD;
EXCEPTION
WHEN e_table_or_view_does_not_exist OR e_type_does_not_exist OR e_sequence_does_not_exist THEN
NULL;
END;
BEGIN
EXEC_DONT_FAIL('drop type <type_name1> force');
EXEC_DONT_FAIL('drop view <view_name1>');
EXEC_DONT_FAIL('drop table <table_name1> purge');
EXEC_DONT_FAIL('drop sequence <seq_name1>');
END;
CREATE TABLE ...Note that the literals in angle brackets are just placeholders for demonstration purposes, you need to use your actual object names/file names there.
Of course you could also use a FOR ... LOOP in the PL/SQL block that queries e.g. USER_OBJECTS to find out which objects to drop.
That way it is ensured that only expected exceptions will be ignored but all others will raise and stop your script in that case.
Regards,
Randolf
Oracle related stuff blog:
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/
Edited by: Randolf Geist on Sep 25, 2008 10:09 AM
Clarification regarding angle brackets added -
Dear All,
I created one table like
create table cls_lrn_tab_unique (F_no number unique UK_F_NO );
after performing some operations I want to delete the same.
At that time i got following error. Please help me and tell what is the reason for the error.
ORA-00604 error occured at recursive level1
ORA-20123 Insufficient privileges: you cannot drop table cls_lrn_tab_unique TABLE,
ORA-06512 at line no 2
Thanks and Regards
Prasad26bffcad-f9a2-4dcf-afa0-e1e33d0281bf wrote:
Dear All,
I created one table like
create table cls_lrn_tab_unique (F_no number unique UK_F_NO );
after performing some operations I want to delete the same.
At that time i got following error. Please help me and tell what is the reason for the error.
ORA-00604 error occured at recursive level1
ORA-20123 Insufficient privileges: you cannot drop table cls_lrn_tab_unique TABLE,
ORA-06512 at line no 2
Thanks and Regards
Prasad
ORA-20123 is a localized/customized error code & message; therefore any solution depends upon what is unique inside your DB now.
I suspect that some sort of TRIGGER exists, which throws posted error, but this is just idle speculation on my part.
How do I ask a question on the forums?
https://forums.oracle.com/message/9362002#9362002 -
How to recover the data from a dropped table in production/archive mode
How to recover the data/change on a table that was dropped by accident.
The database is on archive mode.Oracle Version. ? If 10g.
Try this Way
SQL> create table taj as select * from all_objects where rownum <= 100;
Table created.
SQL> drop table taj ;
Table dropped.
SQL> show recyclebin
ORIGINAL NAME RECYCLEBIN NAME OBJECT TYPE DROP TIME
TAJ BIN$b3MmS7kYS9ClMvKm0bu8Vw==$0 TABLE 2006-09-10:16:02:58
SQL> flashback table taj to before drop;
Flashback complete.
SQL> show recyclebin;
SQL> desc taj;
Name Null? Type
OWNER VARCHAR2(30)
OBJECT_NAME VARCHAR2(30)
SUBOBJECT_NAME VARCHAR2(30)
OBJECT_ID NUMBER
DATA_OBJECT_ID NUMBER
OBJECT_TYPE VARCHAR2(19)
CREATED DATE
LAST_DDL_TIME DATE
TIMESTAMP VARCHAR2(19)
STATUS VARCHAR2(7)
TEMPORARY VARCHAR2(1)
GENERATED VARCHAR2(1)
SECONDARY VARCHAR2(1)
SQL>M.S.Taj -
Can database activity like create or drop tables and packages be tracked in the security/system logs of windows 2003 server for the oracle database 10.2.0.4?
Can purging of oracle log, n case the file has become big or even tempered be tracked in the security/system logs of windows 2003 server for the oracle database 10.2.0.4?2765539 wrote:
Can database activity like create or drop tables and packages be tracked in the security/system logs of windows 2003 server for the oracle database 10.2.0.4?
Can purging of oracle log, n case the file has become big or even tempered be tracked in the security/system logs of windows 2003 server for the oracle database 10.2.0.4?
Your first question is easy, you configure audit to log to the OS audit trail with
alter system set audit_trail=os scope=spfile;
and then enable audit for whatever actions you want to capture. All documented in the Security Guide.
Your second question makes no sense unless you explain what you mean by "oracle log". -
I created a table with tablename USER using an access to oracle converter. now I am unable to drop the table, it says invalid table name.
These are keyword and NOT at all recommended as table name. You can find those types of words by querying
SELECT * FROM v$reserved_words ORDER BY 1 and avoid use of these words as object name.
However. Now you can enclose the name with a double quote to overcome the situation.
DROP TABLE "USER" -
Versions are Oracle 11.2.0.1.0 and SQL Developer 4.0.0.12 on Windows 7 Ultimate SP1.
Hi
I'm following the CBT Nuggets SQL Fundementals training (video #11) and cannot drop a table I have just created. The command executed and error are:
drop table newprods;
Error starting at line : 1 in command -
drop table newprods
Error report -
SQL Error: ORA-00604: error occurred at recursive SQL level 1
ORA-20000: Cannot drop object
ORA-06512: at line 2
00604. 00000 - "error occurred at recursive SQL level %s"
*Cause: An error occurred while processing a recursive SQL statement
(a statement applying to internal dictionary tables).
*Action: If the situation described in the next error on the stack
can be corrected, do so; otherwise contact Oracle Support.
As the HR user I created two tables and created a FK constraint between them. After truncating the table with this FK, I am unable to drop it. Even if I remove the FK, the error is the same. Issing the command in SQL*Plus gives the same error.
This is the first time I have created any tables since installing Oracle on this machine and is my first attempt at dropping a table. I have not created any sequences, triggers or views based on these newly created tables.
Does anyone have any ideas?
CheersC:\Oracle>sqlplus hr@orcl
SQL*Plus: Release 11.2.0.1.0 Production on Wed Sep 4 18:58:55 2013
Copyright (c) 1982, 2010, Oracle. All rights reserved.
Enter password:
Connected to:
Oracle Database 11g Enterprise Edition Release 11.2.0.1.0 - 64bit Production
With the Partitioning, OLAP, Data Mining and Real Application Testing options
SQL> CREATE TABLE table1 (column1 VARCHAR2(20 BYTE));
Table created.
SQL> select * from table1;
no rows selected
SQL> drop table table1;
drop table table1
ERROR at line 1:
ORA-00604: error occurred at recursive SQL level 1
ORA-20000: Cannot drop object
ORA-06512: at line 2
SQL>
Can I run a query to see if there are any triggeres on the table?
EDIT: Ok it looks like no triggers:
SQL> show user
USER is "SYS"
SQL> select * from DBA_TRIGGERS where table_name like '%table1%';
no rows selected
SQL> select * from USER_TRIGGERS where table_name like '%table1%';
no rows selected
Maybe you are looking for
-
I keep trying to open an adobe encore project. However when I try to open it, I keep getting the error message "end of file". I then press "OK" and it just closes encore and gives me no other options to open the project. Can anyone tell me what is
-
Why won't iTunes just PLAY an album, in order, from start to finish?!
Very confused....I can't get an album to play through iTunes on my Mac anymore. It used to work just fine but now, no matter what I try, every time I try to play an album iTunes just picks one song at random from the album and plays that. It won't m
-
How to process huge files using File Adapter without ESR and no FCC?
Hi All, I came to a scenario where i need to pick the file from R/3 sys which of around 500MB and need to transport it to the Third party sys using PI 7.1 . This is just simply a pass through data i.e.., no mapping is required (no ESR). and i don't t
-
whenever i update my display picture on my new bbz10 the display picture is always blurry. help in fixing this
-
HT4527 did library transfer from old to new computer but some files can't be located
I did a itunes library transfer from my old computer to my new computer. However when I select to play some of the songs from my new computer I get a message saying the file can't be located. This does not haqppen on the old computer. Any suggestions