Cannot drop a table
Hi Gurus,
when i am trying to drop a table, getting the below error:
ora - 00942; table or view does not exists
when am doing "desc <table_name>", i can see the structure.
tried to rename the table still its giving ora 00942
can you please suggest why the table cannot be dropped?
thanks in advance!
//saby
Try this as user TEST2:
SQL> select 'drop table "'||table_name||'" purge;' from user_tables where upper(TABLE_NAME) like 'SKF_%' ;
'DROPTABLE"'||TABLE_NAME||'"PURGE;'
drop table "SKF_CL_AL_ROW_AVAILABILITY " purge;
SQL> drop table "SKF_CL_AL_ROW_AVAILABILITY " purge;
There COULD be a blank (or something else) at the end of the table name.
Similar Messages
-
Hi Every one,
An error has occurred during report processing. (rsProcessingAborted)
Get Online Help
Query execution failed for data set 'NonFinTran'. (rsErrorExecutingCommand)
Get Online Help
Cannot drop the table '#NonFinTran', because it does not exist in the system catalog. Cannot drop the table '#MultipleNonFinTran',
because it does not exist in the system catalog. Transaction context in use by another session.
NOTE: NonFinTran &
MultipleNonFinTran are
the Temp table in my storedPoc.
Please any help me to solve this issue.
Thanks & Regards,
Anil Kumar
Anil KumarHi Harsh,
Below is my Stored Proc
SELECT @ServerName=datasource from master.dbo.sysservers WHERE catalog='Voyager'
SELECT @ServerName3=datasource from master.dbo.sysservers WHERE catalog='AuditLog'
SELECT @ServerName2=datasource from master.dbo.sysservers WHERE catalog='Portal'
IF @ServerName IS NOT NULL SET @ServerName='[' + @ServerName + '].' ELSE SET @ServerName=''
IF @ServerName3 IS NOT NULL SET @ServerName3='[' + @ServerName3 + '].' ELSE SET @ServerName3=''
IF @ServerName2 IS NOT NULL SET @ServerName2='[' + @ServerName2 + '].' ELSE SET @ServerName2=''
IF Exists(Select * From tempdb.dbo.SysObjects Where Name Like '#NonFinTran%')
DROP TABLE #NonFinTran
IF Exists(Select * From tempdb.dbo.SysObjects Where Name Like '#MultipleNonFinTran%')
DROP TABLE #MultipleNonFinTran
CREATE TABLE #NonFinTran (FirstName VARCHAR(40), TaxId VARCHAR(40), TrxID VARCHAR(40), Status VARCHAR(255), Field1 VARCHAR(255), Field2 VARCHAR(255),
Field3 VARCHAR(255), Field4 VARCHAR(255), Field5 VARCHAR(255), Field6 VARCHAR(255), DateTime DATETIME,
BranchID CHAR(3), BankID CHAR(1), FromAccountID VARCHAR(255), FromAccountType VARCHAR(255))
CREATE TABLE #MultipleNonFinTran (FirstName VARCHAR(40), TaxId VARCHAR(40), TrxID VARCHAR(40), Status VARCHAR(255), Field1 VARCHAR(255), Field2 VARCHAR(255),
Field3 VARCHAR(255), Field4 VARCHAR(255), Field5 VARCHAR(255), Field6 VARCHAR(255), DateTime DATETIME,
BranchID CHAR(3), BankID CHAR(1), FromAccountID VARCHAR(255), FromAccountType VARCHAR(255))
INSERT #NonFinTran
EXEC('SELECT FirstName, TaxID,
TrxID, Status, TrxField1, TrxField2, TrxField3, TrxField4, TrxField5, TrxField6, DateTime, '''', '''', '''', ''''
FROM ' + @ServerName3 + 'AuditLog.dbo.CCAuditLogEntryView AS Audit, ' + @ServerName + 'Voyager.dbo.CCUser AS CCUser
WHERE CCUser.UserID = Audit.UserID
AND Audit.Succeeded = 1
AND Audit.TrxID IN (''ChangeBillPayDefaultAccountEdit'',''ChangeExpiryUserPassword'',''ChangePasswordEdit'',
''ChangeUserPassword'',''ManageAddressMaint'',''ManageContactMaint'',''ManageSecretQuestionAnswerEdit'',
''ManageTransLimitMaint'',''OtherBankAccountMaintAdd'',''OtherBankAccountMaintDelete'',''OtherBankAccountMaintEdit'',
''WithinAmBankAccountMaintAdd'',''WithinAmBankAccountMaintDelete'',''WithinAmBankAccountMaintEdit'',
''SetAccountMaskPreferenceAudit'',''ChangeLoginIdAudit'')
AND DATEDIFF(DAY, CONVERT(DATETIME, CONVERT(VARCHAR(10), ''' + @StartDate + '''), 103), Audit.DateTime) >= 0
AND DATEDIFF(DAY, CONVERT(DATETIME, CONVERT(VARCHAR(10), ''' + @EndDate + '''), 103), Audit.DateTime) <= 0 ')
INSERT #MultipleNonFinTran
EXEC('SELECT DISTINCT FirstName, TaxID,
TrxID, Status, TrxField1, TrxField2, TrxField3, TrxField4, TrxField5, TrxField6, Audit.DateTime as AuditDateTime,
(SELECT DISTINCT SUBSTRING(A.BranchCode,3,3) FROM ' + @ServerName + 'AuditLog.dbo.CCAuditLogEntryView X INNER JOIN ' + @ServerName + 'Voyager.dbo.CCuser U
ON X.UserId = U.UserId INNER JOIN ' + @ServerName + 'Voyager.dbo.AMHZ_CustomerProfile P ON P.EnrolId = U.TAXID
INNER JOIN ' + @ServerName + 'Voyager.dbo.AMHZ_AccountListing A ON A.CIFNO = P.CIFNO
WHERE X.UserId = Audit.UserId AND A.AccountNo = SUBSTRING(Audit.TrxField1,11,16) AND P.CIFNO = A.CIFNO
AND (SUBSTRING(A.BranchCode,3,3) <> NULL OR SUBSTRING(A.BranchCode,3,3) <> '''')
AND CHARINDEX(''AccountID='', Audit.TrxField1, 1) > 0),
SUBSTRING(TrxField1,14,1), CASE WHEN CHARINDEX(''AccountID='', TrxField1, 1) > 0 THEN
SUBSTRING(TrxField1,11,16) ELSE '''' END, CASE WHEN CHARINDEX(''AccountType='', TrxField2, 1) > 0 THEN SUBSTRING(TrxField2,13,3) ELSE '''' END
FROM ' + @ServerName3 + 'AuditLog.dbo.CCAuditLogEntryView AS Audit, ' + @ServerName + 'Voyager.dbo.CCUser AS CCUser
WHERE CCUser.UserID = Audit.UserID
AND Audit.Succeeded = 1
AND Audit.TrxID IN (''SetAccountAttributesAudit'',''SetAccountFriendlyNameAudit'',
''AccountProfileMaintULDelete'',''AccountProfileMaintLHAAdd'',''AccountProfileMaintLSCAdd'')
AND DATEDIFF(DAY, CONVERT(DATETIME, CONVERT(VARCHAR(10), ''' + @StartDate + '''), 103), Audit.DateTime) >= 0
AND DATEDIFF(DAY, CONVERT(DATETIME, CONVERT(VARCHAR(10), ''' + @EndDate + '''), 103), Audit.DateTime) <= 0 ')
SET @stmt = '
SELECT * FROM
SELECT BranchName,
CASE WHEN SUBSTRING(FromAccountID,1,6) IN (''519901'',''559409'') THEN ''DC''
ELSE
CASE FromAccountType WHEN ''01'' THEN ''SA '' WHEN ''02'' THEN ''CA '' WHEN ''03'' THEN ''FD ''
WHEN ''SA'' THEN ''SA '' WHEN ''CA'' THEN ''CA '' WHEN ''FD'' THEN ''FD '' ELSE FromAccountType + '' ''
END
END +
case when Len(FromAccountID) =16 Then
CASE FromAccountType WHEN ''VC'' THEN
SUBSTRING(FromAccountID,1,6)+''******''+SUBSTRING(FromAccountID,13,4)
WHEN ''MC'' THEN SUBSTRING(FromAccountID,1,6)+''******''+SUBSTRING(FromAccountID,13,4) END
when Len(FromAccountID) =15 Then
CASE FromAccountType WHEN ''VC'' THEN
SUBSTRING(FromAccountID,1,6)+''******''+SUBSTRING(FromAccountID,13,3)
WHEN ''MC'' THEN SUBSTRING(FromAccountID,1,6)+''******''+SUBSTRING(FromAccountID,13,3) END
ELSE FromAccountID
ENd
AS FromAcctNo,
CASE TrxId
WHEN ''AccountProfileMaintLHAAdd'' THEN ''Link Account/Card''
WHEN ''AccountProfileMaintLSCAdd'' THEN ''Link Account/Card''
WHEN ''APMFamilyFirstAdd'' THEN ''Link Family First Account''
WHEN ''AccountProfileMaintULDelete'' THEN ''Unlink Account/Card''
WHEN ''BalInqFD'' THEN CASE WHEN Field3 IN (''APMLink=SUCCESS'') THEN ''APMLink Success'' ELSE ''Fixed Deposit Balance Inquiry'' END
WHEN ''BalInqCASA'' THEN CASE WHEN Field3 IN (''APMLink=SUCCESS'') THEN ''APMLink Success'' ELSE
CASE WHEN FromAccountType IN (''SA'',''01'') THEN ''Savings Account Balance Inquiry''
ELSE ''Current Account Balance Inquiry''
END
END
WHEN ''StopCheck'' THEN ''Stop Cheque Request''
WHEN ''CheckReorder'' THEN ''Order Your Cheque''
WHEN ''CheckInquiry'' THEN ''Cheque Inquiry''
WHEN ''TransHistFD'' THEN ''Fixed Deposit Transaction History''
WHEN ''TransHistCASA'' THEN
CASE WHEN FromAccountType IN (''SA'',''01'') THEN ''Savings Account Transaction History'' ELSE ''Current Account Transaction History'' END
WHEN ''StmtInqCC'' THEN
CASE WHEN FromAccountType IN (''DR'',''03'') THEN ''Debit Card Statement Inquiry'' ELSE ''Credit Card Statement Inquiry'' END
WHEN ''StmtInqDA'' THEN
CASE WHEN FromAccountType IN (''SA'',''01'') THEN ''Savings Account Statement Inquiry'' ELSE ''Current Account Statement Inquiry'' END
WHEN ''StmtReq'' THEN ''Printed Statement Request''
WHEN ''StmtInqIAMSTAR'' THEN ''E-AMSTAR Statement Inquiry''
WHEN ''Repayment/Transfer Inquiry'' THEN ''Repayment/Transfer Inquiry''
WHEN ''Account Inquiry'' THEN ''Account Inquiry''
WHEN ''Payment Inquiry'' THEN ''Payment Inquiry''
END AS TransType,
FirstName AS CustomerName,
TaxId, CONVERT(VARCHAR, DateTime, 103) AS Date, CONVERT(VARCHAR, DateTime, 108) AS Time
FROM #NonFinTran, ' + @ServerName3 + 'Portal.dbo.TB_Branch AS TB_Branch
WHERE
BranchId = TB_Branch.BranchCode
AND (TB_Branch.InstCode IN (''00001'', ''00003'',''001'',''002''))
AND (FromAccountType IN (''SA'', ''CA'', ''FD'', ''01'', ''02'', ''03'')))'
EXEC (@stmt)
IF Exists(Select * From tempdb.dbo.SysObjects Where Name Like '#NonFinTran%')
DROP TABLE #NonFinTran
IF Exists(Select * From tempdb.dbo.SysObjects Where Name Like '#MultipleNonFinTran%')
DROP TABLE #MultipleNonFinTran
Anil Kumar -
Cannot drop the table - cannot enable compression - cannot find the object
Hi,
I'm trying to install Database Instance as a 2nd part of distributed SAP system. There was already MS SQL 2008 STD installed, I installed another MS SQL 2008 STD instance manually (as described in PI installation guide) from original MS SQL 2008 STD DVD, not one provided by SAP. The database is created by SAPinst, and we have a crash at the beginning of ABAP import phase:
Here is a log: -> http://wklej.org/id/392174/
I thought I can run development SAP system on Standard Edition. Am I right and this is just permission problem? How to troubleshoot that?
Thanks for any suggestions.
Regards,
KHi Sven,
Thanks, &norowcompression& did the trick!
Does anyone know is this type of installation (not SAP's MSSQL media, STD Edition for dev/qas system, MS SQL instance for SAP with another MS SQL instances on the same server) is supported?
Thanks again,
K
//edit:
no it's not supported:
Note 62988 - Support Packages for Microsoft SQL Server
"Supported editions
All supported SQL server releases are tested by SAP in the Enterprise Edition only. Therefore, only the Enterprise Edition is supported. The SAP support may not be able to solve problems that occur with other editions."
Edited by: Konrad Kostecki on Sep 23, 2010 10:22 AM -
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 -
We are currently converting our student information system from Sybase to Oracle. My task is to convert our existing sql scripts. A number of them use temp tables and I have successfully got them to run except that I cannot drop the tables at the end of the script because they are still in use *[Error Code: 14452, SQL State: 72000] ORA-14452: attempt to create, alter or drop an index on temporary table already in use*. For example:
/* Oracle Version */
-- Select Cactus ID ------------------------------------------------------------
CREATE GLOBAL TEMPORARY TABLE tch1
(name Varchar(45), tid Int, CactusID Varchar(12))
ON COMMIT PRESERVE ROWS;
INSERT INTO tch1
SELECT
t.lastfirst,
t.id teacherid,
c.value
FROM
teachers t
INNER JOIN customvarchars c ON t.id = c.KeyNo
AND fieldno = 148;
-- Select Core Codes ---------------------------------------------------------------
CREATE GLOBAL TEMPORARY TABLE crs1
(name Varchar(45), cid Int, CactusCd Varchar(12))
ON COMMIT PRESERVE ROWS;
INSERT INTO crs1
SELECT
cs.course_name,
cs.id courseid,
c.value
FROM
Courses cs
INNER JOIN customvarchars c ON cs.id = c.KeyNo
AND fieldno = 146;
-- Put it all together ---------------------------------------------------------
SELECT
t.lastfirst AS Teacher,
ct.CactusID,
s.schoolid AS Sch#,
s.TermID,
c.course_number AS Crs#,
s.section_number AS Sec#,
c.course_name AS Course,
cr.CactusCd,
COUNT(*) AS Enroll
FROM
cc
INNER JOIN sections s ON cc.sectionid = s.id
INNER JOIN courses c ON s.course_number = c.course_number
LEFT JOIN crs1 cr ON c.id = cr.cid
INNER JOIN teachers t ON s.teacher = t.id
LEFT JOIN tch1 ct ON t.id = ct.tid
WHERE s.schoolid NOT IN (701,711)
GROUP BY
s.schoolid,
t.lastfirst,
ct.CactusID,
c.course_number,
s.section_number,
c.course_name,
cr.CactusCd,
s.TermID
ORDER BY
s.schoolid,
t.lastfirst,
ct.CactusID,
c.course_number,
s.section_number,
c.course_name,
cr.CactusCd,
s.TermID;
-- Drop Tables -----------------------
DROP TABLE tch1;
DROP TABLE crs1;
I have an Oracle PL/SQL reference guide at hand, but I don't see any mention of dropping the tables when completed. I'm also curious if I'm using the terminator (;) correctly. MS SQL Server and Sybase did not require one.
Thanks.Christopher Soza wrote:
you need to issue a
COMMIT;
prior to issueing the drop table commands
COMMIT will not help since GTT is ON COMMIT PRESERVE ROWS:
Session 1:
SQL> CREATE GLOBAL TEMPORARY TABLE tch1
2 (name Varchar(45), tid Int, CactusID Varchar(12))
3 ON COMMIT PRESERVE ROWS;
Table created.
SQL> insert into tch1 values('A',1,'B');
1 row created.
SQL> commit;
Commit complete.
SQL> Session 2:
SQL> drop table tch1;
drop table tch1
ERROR at line 1:
ORA-14452: attempt to create, alter or drop an index on temporary table already
in use
SQL> SY. -
How could I drop temporary table in preserve rows?
Hi,
I created a global temporary table test with the option, on commit preserve rows.
I try to drop it with another session but I can't, I always have the error message :
ORA-14452. So what can I do?
Thanks.We cannot drop a temporary table if a session is using it. This means once a session has inserted data into it we cannot drop the table until that session either commits or exits (depending on whether the table is of the type PRESERVE ROWS). You can see this by looking in v$lock.
If you quit out of your first session the second session will be able to drop the table.
Cheers, APC -
Remove an offline filegroup or drop a table residing in an offline filegroup
I restored a database with a primary filegroup backup only. Everything works fine except that when I tried to drop a table which is in another filegroup, I got "Cannot drop the table 'Imaging' because at least part of the table resides on an offline
filegroup.". Is there any way to remove an offline filegroup or drop a table residing in an offline filegroup?
Thank you for help.Not in any supported way. If you were permitted to this, and the other filegroup later was restored, there would be an inconsistency.
Erland Sommarskog, SQL Server MVP, [email protected] -
Hi guys ,
am trying to drop my table . but it is used by another user . am getting error message.
can give a suggession .
Edited by: Balajiraam on Mar 2, 2011 1:33 AMHi,
You cannot drop the table without the other user completing the transaction on the table. So the user's transaction has to be completed before you drop the table. As hoek said the user should either commit or rollback the transaction.
cheers
VT -
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 -
Cannot drop column from table owned by SYS
Hello everybody,
How can I drop a column of table which is owned by sys? thanks!
Result as follows:
SQL> ALTER TABLE HELLO_TB DROP COLUMN NUM;
ALTER TABLE HELLO_TB DROP COLUMN NUM
ERROR at line 1:
ORA-12988: cannot drop column from table owned by SYS
newbie vYou can not 'change' the ownership.
You can, however, 'move' or 'clone' most objects by exporting and importing. As follows:
I create a table under SYS (shudder).
I then export it
- using userid SYS in this case,
- under normal circumstances I'd either use a DBA account or the owner's userid
- since I want a table, I use the TABLES option - a list is comma separated and in quotes
I then import it using a 'userid' switch - fromuser & touser options
- in this case from SYS to HR
Finally, I verify it was transported.
Actual console session in Linux follows:
pop2@fuzzy:~> sqlplus / as sysdba
SQL*Plus: Release 10.2.0.1.0 - Production on Fri Mar 10 19:58:01 2006
Copyright (c) 1982, 2005, Oracle. All rights reserved.
Connected to:
Oracle Database 10g Express Edition Release 10.2.0.1.0 - Production
SQL> create table test1 ( x1 number );
Table created.
SQL> insert into test1 values (2);
1 row created.
SQL> select * from test1;
X1
2
SQL> Disconnected from Oracle Database 10g Express Edition Release 10.2.0.1.0 - Production
pop2@fuzzy:~> exp file=exp.dmp tables='TEST1'
Export: Release 10.2.0.1.0 - Production on Fri Mar 10 20:00:07 2006
Copyright (c) 1982, 2005, Oracle. All rights reserved.
Username: sys/????? as sysdba
Connected to: Oracle Database 10g Express Edition Release 10.2.0.1.0 - Production
Export done in AL32UTF8 character set and AL16UTF16 NCHAR character set
About to export specified tables via Conventional Path ...
. . exporting table TEST1 1 rows exported
Export terminated successfully without warnings.
pop2@fuzzy:~> imp file=exp.dmp fromuser=sys touser=hr
Import: Release 10.2.0.1.0 - Production on Fri Mar 10 20:00:44 2006
Copyright (c) 1982, 2005, Oracle. All rights reserved.
Username: sys/????? as sysdba
Connected to: Oracle Database 10g Express Edition Release 10.2.0.1.0 - Production
Export file created by EXPORT:V10.02.01 via conventional path
import done in AL32UTF8 character set and AL16UTF16 NCHAR character set
. importing SYS's objects into HR
. . importing table "TEST1" 1 rows imported
Import terminated successfully without warnings.
pop2@fuzzy:~> sqlplus hr/hr
SQL*Plus: Release 10.2.0.1.0 - Production on Fri Mar 10 20:00:57 2006
Copyright (c) 1982, 2005, Oracle. All rights reserved.
Connected to:
Oracle Database 10g Express Edition Release 10.2.0.1.0 - Production
SQL> select * from test1;
X1
2
SQL>The export/import pair are incredibly powerful - and few people understand them well. If you are interested in digging into their capability, check out their chapters in the Utilities manual (under the Books tab) at http://www.oracle.com/pls/db102/portal.portal_db?selected=1 -
Cannot Drop table with lower case name
Hi,
One of my developer created a table through application in oracle 10g R2,
when I list tables
select * from tab;
the table name is shown in lower case or Initcap.
I cannot drop or manipulate that table.
How can I drop that table(s)?
Thanks & Regards,
Fahimuse the same case what your table has used and put double quotes on both sides for example if your table is lower case use like:
DROP TABLE "your_table";HTH
Ghulam Mustafa Butt -
Hi,
I've table BP:
CREATE TABLE BP (
BV_ID VARCHAR2 (32) DEFAULT NULL NOT NULL,
BP_ID VARCHAR2 (32) DEFAULT NULL NOT NULL,
CONSTRAINT BP_PK
PRIMARY KEY ( BV_ID, BP_ID )
BP has more 100 records:
Now I'd like to drop table BP:
drop table BP;
ORA-02449: unique/primary keys in table referenced by foreign keys
ALTER TABLE BP DISABLE CONSTRAINT BP_PK;
ORA-02297: cannot disable constraint (BP_PK) - dependencies exist
I tried disable all constraints with:
select 'alter table '||table_name||' disable constraints '||constraint_name||';'
from user_cons_columns
where column_name='BV_ID'
or column_name='BP_ID'
but when I try drop table BP;
ORA-02449: unique/primary keys in table referenced by foreign keys
also truncate table BP:
ORA-02266: unique/primary keys in table referenced by enabled foreign keys
How can I drop table BP and disable all referenced by enabled foreign keys on table BP?
Thanks!Or you could disable the foreign key constraint refering to primary key on the table and then drop the PK and then drop the table
G -
ORA-02303: cannot drop or replace a type with type or table dependents
Oracle 10.2.0.3 on solaris :
I am trying to do a
CREATE OR REPLACE TYPE WickType_StringArray AS TABLE OF VARCHAR2(256);
I am getting the error :
ORA-02303: cannot drop or replace a type with type or table dependents
I then looked for the dependencies :
select * from dba_dependencies where name = 'WICKTYPE_STRINGARRAY' and owner='HARPER';
(Columns below with values are delimited by pipe | )
OWNER|NAME|TYPE|REFERENCED_OWNER|REFERENCED_NAME|REFERENCED_TYPE|REFERENCED_LINK_NAME|DEPENDENCY_TYPE
HARPER|WICKTYPE_STRINGARRAY|TYPE|SYS|STANDARD|PACKAGE||HARD
What is the best way for me to proceed to get my CREATE OR REPLACE statement working ?
ThanksWell you could move to 11g but I'd suggest a less drastic measure for now. Save the data, drop the table, reload the table.
But give serious consideration to Tom Kyte's advice about object tables: Don't use them. Instead use relational tables and object views. -
ORA-12983: cannot drop all columns in a table
Hi,
I am creating a table with two columns.
I have modified a column as unused using ALTER statement.
After that i have tried to drop the another column by using ALTER statement.
But it throws an error ORA-12983: cannot drop all columns in a table.
is it not possible to achieve this via ALTER statement?
thanksis there any other way to find the name of the columns which have been marked as unused?Don't think so, and you would not be able to do much about. You won't be able to reference it, you won't be able to un-unuse it, and you would even be able to add a new column having same name.
Why are you using SET UNUSED in the first place?
Regards
Peter
Quoting myself:
You won't be able to reference itMaybe not good enough:
SQL> select column_name, data_type, segment_column_id
from user_tab_cols
where table_name = 'T';
COLUMN_NAME DATA_TYPE SEGMENT_COLUMN_ID
SYS_C00001_11051618:28:14$ NUMBER 1
B NUMBER 2
SYS_C00003_11051618:28:14$ NUMBER 3
3 rows selected.
select "SYS_C00003_11051618:28:14$" from t
Error at line 1
ORA-00904: "SYS_C00003_11051618:28:14$": invalid identifier
SQL> alter table t drop column "SYS_C00001_11051618:28:14$";
Table altered.
SQL> select column_name, data_type, segment_column_id
from user_tab_cols
where table_name = 'T';
COLUMN_NAME DATA_TYPE SEGMENT_COLUMN_ID
B NUMBER
1 row selected.
Note: Both columns "disappeared" Thanks MichaelS
Edited by: Peter on May 16, 2011 9:29 AM -
Cannot drop table (error ORA-00054)
I am trying to drop a table but get an "ORA-00054 Resource busy and acquire with NOWAIT specified". Previously I had created this table and run a join which I cancelled because it was taking too long and obviously not doing what I wanted. Now I can't get rid of the table, even with sysdba privileges and re-starting the machine running the database.
Can anyone help?It looks like your table got locked. Do you see any locks in your database on this table? I also, suggest you to close or kill the session which was cancled due to long running join condition, as you said in your question.
Maybe you are looking for
-
Can't get URL to open in same window
I am using Flash ActionScript3 - My banner has 3 images, each displays for ~5 seconds. I have each image linked to a web page with more info about each image. The problem is that I can't get the URLs to open in the same window! Each click opens anoth
-
Collection plan going to error on cloned Test server
Collection plan going to followin error on cloned Test serverlog, while it is workng fine on our Production server: Concurrent Manager encountered an error while attempting to start your immediate concurrent program &PROGRAM. Routine &ROUTINE receive
-
Passing internal tables as parameters to a class method.
Hai, I have a requirement to pass an internal table(not structure) as a parameter to a method of a class.Are there ways to do it? Plz reply. Thanks in advance. Hema
-
I saved quite a few .webloc files to share with a colleague
now i realized that she cannot open the links because she uses a PC. i understand that i can use some tricks and convert those .webloc files to .url files. but is there a more native way for windows users to be able to read the .webloc files. either
-
Funds Center assignment to Cost Centers
I'm implementing FM (PSM) in a company that is controlling their expenses only at a cost element level using generic cost centers. Is it possible to assign a generic cost center to more than one fund center and differentiate them due to the commitme