Problem migrating database with charsetset ZHT16MSWIN950 to WE8MSWIN1252

Hello everybody,
I have a database in Oracle 8.1.7 with characterset ZHT16MSWIN950, and I need to migrate this database to Oracle 11.2.0.2 with characterset WE8MSWIN1252. I use EXP (ver. 8.1.7) to export and IMP (ver. 8.1.7) to import and it seems to work fine, but in the source database I store spanish characters (characters with accents, for example "Organización"), and the target database these characters are not imported correctly (for example "Organizaci?n").
These are the parameters to database level:
Oracle 8.1.7 (source)
               NLS_LANGUAGE = AMERICAN
               NLS_TERRITORY = AMERICA
               NLS_CHARACTERSET = ZHT16MSWIN950
               NLS_NCHAR_CHARACTERSET = ZHT16MSWIN950
               NLS_RDBMS_VERSION = 8.1.7.0.0
Oracle 11.2.0.2 (target)
               NLS_LANGUAGE = AMERICAN
               NLS_TERRITORY = AMERICA
               NLS_CHARACTERSET = WE8MSWIN1252
               NLS_NCHAR_CHARACTERSET = AL16UTF16
               NLS_RDBMS_VERSION = 11.2.0.2.0
To export the database I've tried to use NLS_LANG parameter to session level with the following values:
               NLS_LANG = AMERICAN_AMERICA.ZHT16MSWIN950
               NLS_LANG = AMERICAN_AMERICA.WE8MSWIN1252
               NLS_LANG = SPANISH_SPAIN.WE8MSWIN1252
               NLS_LANG = TRADITIONAL CHINESE_TAIWAN.ZHT16MSWIN950
But everytime the import was with those errors (the accents were not migrated propertly).
If I connect to the source database (8.1.7) from PowerBuilder I can see the accents correctly, but when I connect with SQL Plus I can't see the accents, it is very rare.I think for this reason that it is no considering the accents.
I appreciate any help.
Best regards.
Antonio.

Hello,
I have a database in Oracle 8.1.7 with characterset ZHT16MSWIN950, and I need to migrate this database to Oracle 11.2.0.2 with characterset WE8MSWIN1252.
I think there's something wrong.
The character set ZHT16MSWIN950 is for Traditional Chinese and is encoded in Multibytes (I think 2 Bytes), while WE8MSWIN1252 is encoded in 1 Byte.
So you cannot do this conversion without loosing characters.
You should migrate to UNICODE (AL32UTF8), this link may help you:
http://docs.oracle.com/cd/E11882_01/server.112/e10729/ch11charsetmig.htm#NLSPG011
You'll have also some interesting reference here:
https://forums.oracle.com/thread/1056444
Hope this help,
Best Regards,
Jean-Valentin Lubiez

Similar Messages

  • Problem migrating database diagram from JDeveloper 10 to Jdeveloper 11

    Hi List,
    I have database diagrams created by use of JDeveloper 10 (files *.oxd_db), but (after automatic migration) they are not displayed as diafram in JDeveloper 11 (they are displayed as xml).
    If I create new diagrams from JDeveloper 10 I get *.db_diagram files.
    Anybody knows how to migrate JDeveloper 10 diagrams to JDeveloper 11?...
    Best regards
    Francesco

    Hi,
    >>>SAP BASIS 7.11 SWC, after importing it from the SLD
    you don't import that from SLD
    import it from TZP file from PI installation DVD
    then it will work
    Regards,
    Michal Krawczyk

  • Problem creating database with SAP Netweaver 7 sp 12

    Hello all,
    I have retrieved a new license from the website.
    The problem that I now have is that when I try to create a table, I am prompted for an access key. I input the developer access key (29671482393151224771) and it doesn't work.
    Please, does anybody know how I can remedy this?
    Thanks.

    hi henry,
    you cannot modify the standard sap tables and if the prefix does not start with Y or Z..it will ask for access key ...so while creating a table add Y or Z to the table name...
    not only for table name but also for classess,programs,screens etc..
    thanks
    jaideep
    <b><REMOVED BY MODERATOR></b>
    plz close the thread if it is answered..
    Message was edited by:
            Alvaro Tejada Galindo

  • Primavera P6 migrating Database to another instance with migrate.sh

    I want to migrate an existing Primavera P6 Database to another instance.
    What I have done so far.
    I fully backed up the database with expdp and impdp, but I get an error while trying to connect with admuser (maybe because its not existing).
    So I did not take more time in that.
    Later I wanted to use the migrate.sh Tool which looked not that hard to do, because it only needs the credentials and Database connection Information.
    The Database is large, that means over 14GB so I tried several times and the migrate.sh tool gives me after hours SQLExceptions.
    So what should be the Problem?
    Maybe the session time?
    How to change?

    Thank you for your quick reply.
    Ok I will do the impdp import.
    I found an db script: orpm_create_users.sql which will do the creation of all users.
    But before I do that I got an error in the migrate.sh which says:
    "Error in Run SQL Script orpm_ins_aux.sql : DatabaseToolException (ORA-02298: cannot validate (ADMUSER.FK_UPLIST_USESSION) - parent keys not found)
    Do somebody has an idea for that?
    I will post my impdp import after Ive done it...

  • Problem when creating Database with Database, OS and hardware Configuraiton

    Problem when creating Database:
    There are two problems, which I faced during creation of database. When creating database with Oracle Database Assistant. One when creating pre tuned database from CD. And second when creating customized database giving options your self.
    Problem # 1:
    When creating pre tuned database from CD. The process of creating Database is 90 % complete and is at step # 3 Initializing Database. It gives error ORA-03113: end-of-file on communication channel.
    I searched following oracle help for this problem.
    ORA-03113: end-of-file on communication channel
    Cause: An unexpected end-of-file was processed on the communication channel. The problem could not be handled by the Net8, two-task software. This message could occur if the shadow two-task process associated with a Net8 connect has terminated abnormally, or if there is a physical failure of the interprocess communication vehicle, that is, the network or server machine went down.
    Action: If this message occurs during a connection attempt, check the setup files for the appropriate Net8 driver and confirm Net8 software is correctly installed on the server. If the message occurs after a connection is well established, and the error is not due to a physical failure, check if a trace file was generated on the server at failure time. Existence of a trace file may suggest an Oracle internal error that requires the assistance of customer support.
    Conclusion:
    What I conceive from this problem and the help available is that, I have to install NET8 again. But I am not sure about the solution, please tell me whether I am rite or not.
    Problem # 2:
    When creating database with custom option. The process of creating Database is 2 % complete and is at step # 2 Creating Database Files. It gives error ORA-12571: TNS:packet writer failure.
    I searched following oracle help for this problem.
    ORA-12571: TNS:packet writer failure
    Cause: An error occurred during a data send.
    Action: Not normally visible to the user. For further details, turn on tracing and re-execute the operation. If error persists, contact Worldwide Customer Support.
    Conclusion:
    What I conceive from this problem and the help available is that, I have to install NET8 again. But I am not sure about the solution, please tell me whether I am rite or not.
    Software & Hardware Configuration are as follow:
    Software:
    Database
    Oracle 8.1.7.0.0 (Oracle8i)
    Operating System
    Microsoft Windows 2000
    5.00.2195
    Service Pack 2
    Hardware:
    x86 Family 6 Model 8 stepping
    10
    AT/AT COMPITABLE
    260,400 KB RAM

    user563502 wrote:
    I am working on Solaris 8. What is Alert_SID.log? where can I find it?
    ThanksFor the responsible of the upgrade of Oracle database, not even know what Alert log is?
    to be honest with you, this is not your work.

  • How to create Rows in Database with EJB3.0 Entities - Relationship Problem

    Hi,
    I don't have much experience in writing Entity Java Beans, so if some questions are "dummy-questions", I apologize for that.
    Actual state: I have implemented Entity Java Beans with relationships between them. I can deploy them to JBOSS AS and everything is fine. Then, I want to implement a small client to fill the database with some values to check if my Beans are correct.
    Problem: I have three Beans, that have relationships.
    Entity Flight, Entity FlightSeat and Entity Address
    Flight has a OneToMany relationship with FlightSeat and two ManyToOne relationships with Address (for start- and destinationaddress of the flight)
    No, I want to create Values in the database with the Entities, but I don't know how I have to conside the relationships. How can I add a Flight row to the database? Do I have to specifiy the start- and destinationaddress, when saving the entity Flight with Entitymanager.persist()?? Maybe you know a good Tutorial where I can see, how it is possible to fill the tables?
    Here my Implementation:
    Flight.java:
    package at.ac.tuwien.inetappl.entity;
    import java.io.Serializable;
    import javax.persistence.CascadeType;
    import javax.persistence.Column;
    import javax.persistence.Entity;
    import javax.persistence.GeneratedValue;
    import javax.persistence.GenerationType;
    import javax.persistence.Id;
    import javax.persistence.JoinColumn;
    import javax.persistence.ManyToOne;
    import javax.persistence.OneToMany;
    import javax.persistence.Table;
    import javax.persistence.FetchType;
    import java.util.Date;
    import java.util.Collection;
    @Entity
    @Table (name="REL_FLIGHT")
    public class Flight implements Serializable{
         private long flightid;
         private String company;
         private Date duration;
         private Address startaddress;
         private Address destinationaddress;
         private Collection<FlightSeat> seats;
         public Flight() {}
         public Flight(String company, Date duration, Address startaddress, Address destinationaddress)
              this.company=company;
              this.duration=duration;
              this.startaddress=startaddress;
              this.destinationaddress=destinationaddress;
         @Id @GeneratedValue(strategy=GenerationType.AUTO)
         @Column(name="FLIGHT_ID")
         public long getId()
              return this.flightid;
         public void setId(long flightid)
              this.flightid = flightid;
         @Column(name="COMPANY")
         public String getCompany()
              return this.company;
         public void setCompany(String company)
              this.company=company;          
         @Column(name="DURATION")
         public Date getDuration()
              return this.duration;
         public void setDuration(Date duration)
              this.duration=duration;
         @ManyToOne (optional=false)
         @JoinColumn(name = "START_ADDRESS_ID")
         public Address getStartAddress()
              return this.startaddress;
         public void setStartAddress(Address startaddress)
              this.startaddress=startaddress;
         @ManyToOne (optional=false)
         @JoinColumn(name = "DESTINATION_ADDRESS_ID")
         public Address getDestinationAddress()
              return this.destinationaddress;
         public void setDestinationAddress(Address destinationaddress)
              this.destinationaddress=destinationaddress;
         @OneToMany(cascade = CascadeType.ALL, fetch=FetchType.EAGER, mappedBy="flight")
         //@JoinColumn(name= "SEAT_ID")
         public Collection<FlightSeat> getSeats()
              return this.seats;
         public void setSeats(Collection<FlightSeat> seats)
              this.seats=seats;
    }Address.java:
    package at.ac.tuwien.inetappl.entity;
    import java.io.Serializable;
    import javax.persistence.Entity;
    import javax.persistence.GeneratedValue;
    import javax.persistence.GenerationType;
    import javax.persistence.Id;
    import javax.persistence.Table;
    import javax.persistence.Column;
    @Entity
    @Table (name="REL_ADDRESS")
    public class Address implements Serializable{
         private String land;
         private String city;
         private String street;
         private int streetnumber;
         private int postalcode;
         private long addressid;
         public Address() {}
         public Address (String land, String city, String street,
                   int streetnumber, int postalcode) {
              this.land=land;
              this.city=city;
              this.street=street;
              this.streetnumber=streetnumber;
              this.postalcode=postalcode;          
         @Id @GeneratedValue(strategy=GenerationType.AUTO)
         @Column(name="ADDRESS_ID")
         public long getId()
              return this.addressid;
         public void setId(long addressid)
              this.addressid = addressid;
         @Column(name="LAND")
         public String getLand()
              return this.land;
         public void setLand(String land)
              this.land=land;
         @Column(name="CITY")
         public String getCity()
              return this.city;
         public void setCity(String city)
              this.city=city;          
         @Column(name="STREET")
         public String getStreet()
              return this.street;
         public void setStreet(String street)
              this.street=street;
         @Column(name="STREETNUMBER")
         public int getStreetNumber()
              return this.streetnumber;
         public void setStreetNumber(int streetnumber)
              this.streetnumber=streetnumber;
         @Column(name="POSTALCODE")
         public int getPostalCode()
              return this.postalcode;
         public void setPostalCode(int postalcode)
              this.postalcode=postalcode;
    /code]
    FlightSeat.java package at.ac.tuwien.inetappl.entity;
    import java.io.Serializable;
    import javax.persistence.Column;
    import javax.persistence.GeneratedValue;
    import javax.persistence.GenerationType;
    import javax.persistence.Id;
    import javax.persistence.Entity;
    import javax.persistence.JoinColumn;
    import javax.persistence.ManyToOne;
    import javax.persistence.Table;
    @Entity
    @Table (name="REL_FLIGHTSEAT")
    public class FlightSeat implements Serializable {
         private long seatid;
         private String category;
         private int price;
         private boolean available;
         private Flight flight;
         public FlightSeat() {}
         public FlightSeat(String category, int price, boolean available)
              this.category=category;
              this.price=price;
              this.available=available;
         @Id @GeneratedValue(strategy=GenerationType.AUTO)
         @Column(name="SEAT_ID")
         public long getId()
              return this.seatid;
         public void setId(long seatid)
              this.seatid = seatid;
         @Column(name="CATEGORY")
         public String getCategory()
              return this.category;
         public void setCategory(String category)
              this.category=category;
         @Column(name="PRICE")
         public int getPrice()
              return this.price;
         public void setPrice(int price)
              this.price=price;
         @Column(name="AVAILABLE")
         public boolean getAvailability()
              return this.available;
         public void setAvailability(boolean available)
              this.available=available;
         @ManyToOne()
         @JoinColumn(name="FLIGHT_ID")
         public Flight getFlight()
              return this.flight;
         public void setFlight(Flight flight)
              this.flight=flight;
    FlightBean.java - implementing business methods
    package at.ac.tuwien.inetappl.bean;
    import javax.ejb.Stateless;
    import javax.persistence.EntityManager;
    import javax.persistence.PersistenceContext;
    import javax.ejb.Remote;
    import at.ac.tuwien.inetappl.entity.Flight;
    import at.ac.tuwien.inetappl.entity.Address;
    import at.ac.tuwien.inetappl.entity.FlightSeat;
    import java.util.Collection;
    import java.util.Date;
    import java.util.Iterator;
    import java.io.Serializable;
    import javax.persistence.Query;
    @Stateless
    @Remote(FlightInterface.class)
    public class FlightBean implements FlightInterface, java.io.Serializable {
         //private Collection<Flight> flight;
         @PersistenceContext
         protected EntityManager em;
         /* CRUD METHODS FOR FLIGHT */
         /* CREATE FLIGHT */
         public void createFlight(String company, Date duration, Address start, Address dest)
              Flight flight = new Flight();
              flight.setCompany(company);
              flight.setDuration(duration);
              flight.setStartAddress(start);
              flight.setDestinationAddress(dest);
              em.persist(flight);     
         public void updateFlight(Flight flight)
              em.persist(flight);
         /* DELETE FLIGHT*/
         public void deleteFlight(long id)
               Query q = em.createQuery("DELETE FROM FLIGHT f WHERE f.FLIGHT_ID = :id");
               q.setParameter ("id", new Long(id));
         /* SEARCH METHODS FOR FLIGHT */
         public Collection<Flight> getFlights()
              return em.createQuery("from FLIGHT f").getResultList();
         public Flight getFlight(long id) {
              Flight flight = em.find(Flight.class, new Long(id));
              return flight;
         public String getCompany(long id) {
              Flight flight = em.find(Flight.class, new Long(id));
              String company = flight.getCompany();
              return company;
    }Thanks to all!! I hope somebody can help.
    Greetings,
    RedBaron

    On Wed, 16 May 2007 20:41:21 +0000 (UTC), "bsoliman"
    <[email protected]> wrote:
    >You need to set up virtual directories instead?see
    >
    http://support.microsoft.com/kb/172138
    The actual directories can be wherever
    >is most convenient for you?I keep mine in a folder called
    /clients outside my
    >local web root.
    >
    > Bev
    Understand that virtual directories are not exactly the same
    thing as
    virtual hosts.
    A virtual directory will not act as the root for a site. IIS
    will
    still think that your site root is the overall IIS site root.
    There are some utilities that allow you to switch the folder
    that IIS
    uses as the root. This one works pretty well:
    http://jetstat.com/iisadmin/
    Win
    Win Day, Wild Rose Websites
    http://www.wildrosewebsites.com
    [email protected]
    Skype winifredday

  • Database migration from non rac and non asm to RAC database with ASM

    HI,
    i have requirement to import one database ( db1) which running one node with out ASM and with out RAC , now i want to import that database with rman backup to another database ( db2) which running on different server with 3 node RAC and ASM ( disk group +DATA ) , can you please provide me the steps how i can migrate.? ( i have created db2 with dbca with RAC).
    regards,
    sri

    Sri,
    This could be done multiple ways. Simplest for you is to use DBCA:
    http://download.oracle.com/docs/cd/B28359_01/install.111/b28264/cvrt2rac.htm

  • Problem to create database with RAC 10g with Oracle Standard Edition

    I install CRS (Cluster Ready Services), and then install Oracle 10g database. Also, I install patches 10.1.0.4. When I create database with ASM storage give me a error to create files database.
    Any idea?
    Thanks
    Edu Alcañiz

    You were right.
    http://download-uk.oracle.com/docs/html/B14203_05/intro.htm#sthref44
    under the section
    "1.3 Configuration Tasks for Oracle Clusterware and Oracle Real Application Clusters"
    "... If you use RAC on Oracle Database 10g Standard Edition, then you must use ASM."
    Thanks, problem solved.
    - Vegard

  • Web AS 6.40 Sneak Preview: Problems with monitoring Database with SQL Studi

    Hello!
    I'm new with SAP and SAP Web AS, and I installed the SAP Web AS 6.40 Sneak Preview recently. I'm exercizing with the tutorials, and in the Tutorial "Car rental Application", a "QCR_RESERVATION" database is created and deployed.
    The deployment worked fine, but I'm having problems accessing the SAP DB with SQL Studio.
    At first, I didn't find SQL studio in my SAP installation, so I installed it afterwards. I now tried to log on with the data mentioned in the tutorial (localhost, C11, SAPC11DB and "sap"), and got the error "Database not running (-709)". Looking at the SAP Management Console, I found a database with the name "J2E", so I tried this one.
    But now the problem is, that with user SAPJ2EDB and password "sap", I get the error "(-4008) Unknown username and password", and the same error with the combination "control", "control".
    What is my mistake? Could anybody give me a hint? Maybe there is something wrong with my Web AS 6.40 Sneak Preview Installation? I don't remember having changed any settings during installation ...
    Thank you in advance
    Bärbel Wolf

    Dale, thank you very much.
    Your hint really is useful, I know myself, I'd most probably need unlocking my admin user soon. )
    But nevertheless, I'm still looking for the right password for the database user "SAPJ2EDB".
    As I'm encountering problems with the "Quick Car Reservation" tutorial (the entity bean seems unable to access the database, too), I'd like to check the QCR_RESERVATION database with my SQL Studio. Maybe there's something wrong with it.
    Greetings
    Bärbel

  • Performance problems with Oracle 9.2.0.2 Database with optimizer_mode=RULE

    If I make an explain plan for a query of the following form:
    SELECT a.*
    FROM a, b
    WHERE a.pk = b.fk
    AND b.pk IN (1, 2);
    the explain plan states, that a FULL-TABLE-SCAN on table b is performed and a HASH-JOIN is done to execute the query.
    On 8.0.6 Database the Indexes on the tables are used and a NESTED-LOOP join is performed.
    Why is the 9.2.0.2 Database using HASH-JOINS when the Database is explicitly set to optimizer_mode=RULE, as I think HASH-JOINS are only possible with CBO?
    How can I force the 9.2.0.2 database to perform exactly like the 8.0.6 database with RBO?

    some options:
    set the hash_join_enabled parameter to false in the init.ora file.
    set the compatible parameter to 8.0 in the init.ora file.
    documentation:
    HASH_JOIN_ENABLED specifies whether the optimizer should consider using a
    hash join as a join method. When set to FALSE, hash join is turned off; that is, it is
    not available as a join method that the optimizer can consider choosing. When set to
    TRUE, the optimizer will compare the cost of a hash join to other types of joins, and
    choose it if it gives the best cost.
    COMPATIBLE allows you to use a new release, while at the same time guaranteeing
    backward compatibility with an earlier release. This is in case it becomes necessary
    to revert to the earlier release. This parameter specifies the release with which the
    Oracle server must maintain compatibility. Some features of the current release may
    be restricted.

  • Problems when I try create a database with DBCA

    Hello,
    I have created a clonic template with the DBCA of one of my Databases.
    When I try create Database with the template the DBCA does not do anything.
    No error messages.
    My Oracle is 9i 9.2.0.6.
    Somebody can help me?

    Can you check the alert log/ trace file if you can see any error message there ??

  • Query distributed database with different character sets.

    Hello experts, this is my situation:
    I have two databases A and B, the same version 11.1.0.7, the same OS Suse Linux Enterprise 10 but with different character sets, A has WE8MSWIN1252 while B has AL32UTF8. The database B is my XML DB repository so there I have some XML type tables. I need to query this tables from the database A using a dblink and in fact I have done that but the XML content is trasformed due to the different character sets between the databases. Some time there are data loss and some time there are data missmatch.
    Is there any way to query the tables stored in the database B without problems? I do not know if the following is correct: Maybe I can set the character set for the session in the database A during the time it query the database B. That is, change the character set in fly at session level.
    Do you have any special suggestion?
    I hope you can help me, thank you in advance.

    The Globalization Support Guide for 11.1.0.7 has a chapter on character set migration that should be helpful. AL32UTF8 is a superset of WE8MSWIN1252 but it is not a strict superset. That is, it doesn't meet the second prong of the test in the documentation
    The new character set is a strict superset of the current character set if:
    Each and every character in the current character set is available in the new character set.
    Each and every character in the current character set has the same code point value in the new character set. For example, many character sets are strict supersets of US7ASCII.Exporting the data from the A, changing the character set (or creating a new database with the AL32UTF8 character set), and then importing the data may be the easiest approach in your case.
    Justin
    Edited by: Justin Cave on Jan 13, 2011 12:08 PM

  • Error while migrating charecter set using CSALTER from WE8MSWIN1252 to UTF8

    Hi.
    I tried to migrate with my database. I did backup, started in restricted mode the database.
    when I run csalter.plb script I got:
    SQL> @@csalter.plb
    0 rows created.
    Function created.
    Function created.
    Procedure created.
    This script will update the content of the Oracle Data Dictionary.
    Please ensure you have a full backup before initiating this procedure.
    Would you like to proceed ?(Y/N)?Y
    old 5: if (UPPER('&conf') 'Y') then
    new 5: if (UPPER('Y') 'Y') then
    Enter value for 1: UTF8
    old 8: param1 := '&1';
    new 8: param1 := UTF8';
    Checking data validility...
    TOCHAR is not superset of FROMCHAR
    PL/SQL procedure successfully completed.
    0 rows deleted.
    Alter database character set....
    Checking or Converting phrase did not finish successfully
    No database (national) character set will be altered
    PL/SQL procedure successfully completed.
    SQL>
    What should I type where I got "Enter value for 1:" ??
    I have already done this with ANOTHER DATABASE with same Oracle version(10.1.0.2.0) and now application working fine, but now i am getting this problem.
    How to correct my mistake ?? and what should i do to do it successfully

    I recommend you upgrade at least to 10.1.0.5. 10.1.0.2 comes with the very first version of csalter.plb, which has not the current implementation. From and to which character set do you try to migrate?
    -- Sergiusz

  • Problem in Database convertion from US7ASCII to UTF8

    Hi,
    We are facing the following problem while converting the database from US7ASCII to UTF8:
    We have recently changed the database character set from US7ASCII to UTF8 for the internationalization
    purpose. We ran the Character set scanner utility and it did report that some data may pose problems.
    We followed the the below mentioned process to convert into UTF8 -
    1) alter database character set utf8
    2) alter database national character set utf8.
    Now we find some problem while working with the old data in our application which is java based.
    We are getting the following error "java.sql.SQLException: Fail to convert between UTF8 and UCS2: failUTF8Conv".
    We further analyzed our data and found some interesting things :
    e.g.
    DB - UTF8.
    NL_LANG also set to UTF8.
    Select name from t1 where name like 'Gen%';
    NAME
    Genhve
    But when we find out the length of the same data it show like this
    NAME LENGTH(NAME) VSIZE(NAME)
    Genhve 4 6
    The question is why is it showing length as 4 only and when we try to use a substr function
    its extracting like the following :-
    select name,substr(name,4,1) from t1 where name like 'Gen%';
    NAME SUB
    Genhve hve
    We have execute the above queries on US7ASCII DB and it is working fine, length it shows 6
    and using SUBSTR it extracts just 'h' as well.
    We also used dump function on the UTF8 Db for the above query,,this is the result :-
    select name,length(name),vsize(name),dump(name) from t1 where name like 'Gen%';
    NAME LENGTH(NAME) VSIZE(NAME) DUMP(NAME)
    Genhve 4 6 Typ=1 Len=6: 71,101,110,232,118,101
    We checked a lot with the data and it seems 'h' (accented e) is posing the problem.
    We want to know where is the problem and how to overcome this.
    Further, we tried all of the following :
    1)
    Export Server: US7ASCII
    Export Client: did not set NLS_LANG / NLS_CHAR, so presumably US7ASCII as well
    Import Client: did not set NLS_LANG / NLS_CHAR, so presumably US7ASCII as well
    Import Server: UTF8
    RESULT: Acute e became h
    2)
    Export Server: US7ASCII
    Export Client: did not set NLS_LANG / NLS_CHAR, so presumably US7ASCII as well
    Import Client: NLS_LANG=AMERICAN_AMERICA.UTF8 and NLS_CHAR=UTF8
    Import Server: UTF8
    RESULT: IMP 00016 error
    3)
    Export Server: US7ASCII
    Export Client: NLS_LANG=AMERICAN_AMERICA.UTF8 and NLS_CHAR=UTF8
    Import Client: did not set NLS_LANG / NLS_CHAR, so presumably US7ASCII as well
    Import Server: UTF8
    RESULT: Acute E became h
    4)
    Export Server: US7ASCII
    Export Client: NLS_LANG=AMERICAN_AMERICA.UTF8 and NLS_CHAR=UTF8
    Import Client: NLS_LANG=AMERICAN_AMERICA.UTF8 and NLS_CHAR=UTF8
    Import Server: UTF8
    RESULT: Acute e became h
    5)
    Tried using Update sys.props$
    set value$='UTF8'
    where name='NLS_CHARACTERSET'
    RESULT: Acute e shows properly but it gives problem in the application
    "java.sql.SQLException: Fail to convert between UTF8 and UCS2: failUTF8Conv"
    Looking further it was observed the following:
    when you try this command on a column 'city' in a table which contains 'Genhva' (note the acute e after n), it shows
    command: select length(city), vsize(city),substr(city,4,1),city from cities
    Result: 4 6 hva Genhva
    if you see the value of substr(city,4,1) , you will see the problem. Also note that the length shows 4 and size shows 6. Moreover, when these records are selected through JDBC Driver, it starts giving problems.
    6)
    Actually the above (point no. 5) is similar to changing the character set of the database with 'ALTER DATABASE CHARACTER SET UTF8'. Same problem is observed then too.
    7)
    We have also tried to with another method, that is by changing the third byte of the export file which specifies the character set, to the UTF8 code by editing the export file with a Hexdecimal editor. After import the same problem has been observed as defined in (5) and (6) above.
    We have no more ideas how to migrate without corrupting the data. Of course we have known the records where these characters occur through the Oracle's cssacn utility but we do not want to manually rectify each and every record by replacing it with an ASCII character. Any other idea as to how this can be accomplised?
    Thanx
    Ashok

    The problem you have is that although your original database is defined as US7ASCII, the data it contains is more than is covered by this code page (as the reply on Sept 4 to the previous posting already said).
    This has probably happened because the client was also defined as US7ASCII, and when the DB and client are defined as having the same character set no conversion (or checdking) takes place when data is passed between them. However if you are using a Windows client then it will in fact be using Windows code page 1252 (Latin-1) or similar, and this allows many more characters, including h (accented e). So a user can enter all these characters and store them in the database, and similarly read them from the database, because data transfer is transparent.
    When you did ALTER DATABASE CHARACTER SET UTF8 this will only change the label on the database, but not affect the contents. However only part of the contents are valid UTF8, any character above 7F (like h) is invalid. If your original client now uses the database, code page transformation will take place because the client and DB have different character sets defined. The invalid codes can then cause problems.
    Without being able to explain what has happened in detail, it may help to see what your h (dec 232, x'E8') looks like. The actual data has not changed (you can see this as it is reported as 232). However the binary code there (11101000) is invalid UTF8. UTF8 encodes a character in 1 to 4 bytes, and the first bits in a UTF8 character tell how many bytes it uses. 0xxx tell it is one byte (same as the corresponding USASCII character), 110x that it uses 2 bytes, 1110 that it uses 3 bytes etc. So if you interpret what is there as UTF8 it looks like the first byte of a 3-byte character, which explains why the substringing is giving you the other 2 bytes as well.
    Can you fix this without losing data? I believe yes. First you should check what other characters are being flagged by the scan. See if these are contained in another standard character set. If they are only Western European accentet characters then WE8ISO8859P1 is probably ok, but watch out for the euro sign which Windows has at x'80', an undefined character in ISO8859-1.
    You can see the contents of the Microsoft Windows Codepage 1252 at: http://www.microsoft.com/globaldev/reference/sbcs/1252.htm
    For a listing of the US-ASCII defined characters see http://czyborra.com/charsets/iso646.html and for ISO 8859-1 see http://czyborra.com/charsets/iso8859.html#ISO-8859-1
    If all is well, you can first ALTER DATABASE CHARACTER SET to WE8ISO8859P1. This will not change any data, but ensure that all the data gets exported. Then export the DB and import it to a UTF8 DB. This will convert the non-US-ASCII characters to Unicode. You will also have to change the clients character set to something other than USASCII or they will just see ? for the other characters.
    Good Luck!

  • Use of non-migratable database link not allowed in OSB

    Hi All,
    I have a procedure in which tables are invoked using Database links.
    Now I have created a business service which uses this procedure. However I am getting below error
    The invocation resulted in an error: Invoke JCA outbound service failed with application error, exception: com.bea.wli.sb.transports.jca.JCATransportException: oracle.tip.adapter.sa.api.JCABindingException: oracle.tip.adapter.sa.impl.fw.ext.org.collaxa.thirdparty.apache.wsif.WSIFException: servicebus:/WSDL/E2xInterface_V1/WSDL/GetEWOStatus [ GetEWOStatus_ptt::GetEWOStatus(InputParameters,OutputParameters) ] - WSIF JCA Execute of operation 'GetEWOStatus' failed due to: Stored procedure invocation error.
    Error while trying to prepare and execute the SP_GETEWOSTATUS API.
    An error occurred while preparing and executing the SP_GETEWOSTATUS API. Cause: java.sql.SQLException: ORA-00604: error occurred at recursive SQL level 1
    ORA-24777: use of non-migratable database link not allowed
    can we use dblink in procedure while accessing through business service. Please let me know.
    Thanks
    Chandana

    hello gurus . i have same problem on my stored procedure what is a non xa datasource. how can i create on my weblogic server

Maybe you are looking for

  • Insert page in PDF

    Hey everyone, I need to find a way to insert a page (PDF file) into an existing PDF through java. I have Adobe Acrobat Pro 8 on my pc but am doubtful that I will be able to use it through java. Your help would be greatly appreciated! Thanks, Chris

  • Doubt in String handling...

    Hi Here i have a code snippet. public class StringComp      public static void main(String[] args)           String a = "abc";           String b = "def";           String c = "abcdef";           String d = "xyz";           String e = "xyz";         

  • Can I use ACR tools in an image already opened in PS5?

    If I have opened a RAW image in PS5.5 and it has several layers already modifying the file, can I convert the bottom layer to a smart object and then use ACR tools like de-fringing, etc.? I notice flaws in the image that would be corrected that way,

  • How old of an iPod can I use with cloud, new os, and sync?

    I have PC (HP Mini netbook with Widows 7 Starter and latest iTunes update)  but I have an old iPod 2 and can't afford a new one.  Will I be able to use cloud (I think not) and can I download the new iTunes software to my Touch 2 so that I can sync th

  • Isolation level and performance impact?

    Hi I'm new to BDB JE and building some prototypes to evaluate it. Given a simple usecase of storing the following key/value pair <String,List<Event>> mapping a user to his/her list of events, in the db. New events are added for the user, this happens