Re: import where char set is different - ORA-01461

From: Laurenz Albe <invite_at_spam.to.invalid>
Date: 28 Feb 2008 12:03:15 GMT
Message-ID: <1204200191.978018@proxy.dienste.wien.at>


Luch <DarthLuch_at_gmail.com> wrote:
> One of our customers sent us an export dmp which we're trying to
> import. Their database uses a character set that is West European or
> MSWIN, whereas ours is Unicode. During the import, we get this error:
>
> . . importing table "DEFECT_REPORT"
> IMP-00058: ORACLE error 1461 encountered
> ORA-01461: can bind a LONG value only for insert into a LONG column
> IMP-00018: partial import of previous table completed: 614870 rows
> imported
>
>
> The table contains two columns that are varchar2(4000). We believe
> this, along with the difference in character set, is the source of the
> problem. We think there are certain records that have data, that in a
> certain char set, are "too big" to fit into the same column once the
> database is in another character set.
>
> The question is, is this assessment correct?

Unless the error message is misleading, I would take it to mean that the import tries to insert a LONG column into a database field of a different type.

Is the database into which you are trying to import empty? If not, an existing table definition might not match the imported data.

But maybe the message is misleading and it is indeed a character length semantics problem.

Start with an empty database.

You could first import only the table definitions (using ROWS=n) and then change all character fields to length semantics CHAR.

After that, you can import a second time using IGNORE=y and use the modified tables. Maybe that will solve your problem.

Yours,
Laurenz Albe Received on Thu Feb 28 2008 - 06:03:15 CST

Original text of this message