Skip to Main Content

SQL Developer

Announcement

For appeals, questions and feedback about Oracle Forums, please email oracle-forums-moderators_us@oracle.com. Technical questions should be asked in the appropriate category. Thank you!

Importing from excel doesn't work on date fields

711683Jul 13 2009 — edited Oct 21 2009
I'm trying to import from an excel file, and two of the fields are dates. When I look at the resulting Insert statement, I see this:

to_date('39896.0', 'MM/DD/YYYY HH:MI:SS')

Which, of course, does not work. Where is this '39896' coming from?

I've seen a few other people with this issue, but no solutions. Is there a suggestion box or something? This tool could be great, but as it stands, even when it works it's too hard to use.

Comments

John Stegeman

Unique constraints automatically create (or "capture," if one already exists) an index, so just create the constraint - no need for a separate index. The underlying index may be unique or not, depending upon whether the constraint is deferrable. So, you can make the error go away by not creating the index in the first place

Having said that, it looks like you've discovered a situation where Oracle gets confused, and filing an SR with Oracle could either get that issue resolved or explained as to why it's not an issue.

John

Solomon Yakobson
Answer

First of all you have show_orders in index and show_order in constraint. I'll assume it is a typo. Secondly, when you create constraint without specifying reinforcing index Oracle looks for existing index on same set of columns in ASCending order. If such index doesn't exists (and that's your case since one of your index columns is in DESCending order), Oracle tries to create one with same name as the constraint. That's why you get ORA-00955: name is already used by an existing object. In general, you can explicitly specify index name to force Oracle using existing index. But it will not help you. If you issue

alter table orders add constraint orders_year_show_uq unique(year, show_orders) using index orders_year_show_uq;

You'll get ORA-14196: Specified index cannot be used to enforce the constraint.

Anyway, Oracle doesn't support using DESC indexes for PK/UK.

SY.

Marked as Answer by Giovanni_66 · Sep 27 2020
Giovanni_66

Ok, thank you for your answer.

1 - 3
Locked Post
New comments cannot be posted to this locked post.

Post Details

Locked on Nov 18 2009
Added on Jul 13 2009
16 comments
3,827 views