Login ProductsSalesSupportDownloadsAbout |
Home » Technical Support » ElevateDB Technical Support » Support Forums » ElevateDB General » View Thread |
Messages 1 to 4 of 4 total |
Switching ANSI EDB to Unicode EDB |
Tue, Sep 29 2009 12:55 AM | Permanent Link |
"Roy Jonker" | This is from an earlier post:
<< Aside from the Delphi code changes that are necessary, is it possible/easy to upgrade an ANSI EDB database to Unicode EDB? >> It's possible, but not entirely easy to do. The best solution is this: 1) Reverse-engineer the existing database to a script (no data). 2) Change all instances of ANSI as a collation reference in the reverse-engineered script to UNI. 3) Export the data from each table to a CSV file using the EXPORT TABLE statement. 4) Run the script above on the new database. 5) Import the data for each table from the files created in step 3. The problem is in Step 4. In EDB Manager, I created a new session (config file 4IQConfig), gave it a new database, and now running the script gives this message: == ElevateDB Error #700 An error was found in the statement at line 18 and column 19 (ElevateDB Error #401 The collation UNI does not exist in the configuration 4IQConfig) == These are some lines starting with line 18: EXECUTE IMMEDIATE 'CREATE TABLE "options" ( "MaxIdLength" INTEGER, "RegistrationCode" VARCHAR(64) COLLATE "UNI", etc. What am I doing wrong? RJ |
Tue, Sep 29 2009 1:12 AM | Permanent Link |
"Roy Jonker" | Vista 32, Delphi 7 with 2.02b15 non-unicode, and D2010 with 2.03b2 unicode,
and 2.03b2 EDBManager. "Roy Jonker" <royjonker@canada.com> wrote in message news:684E0770-C338-4EE1-8AA8-F0BBD498DB82@news.elevatesoft.com... > This is from an earlier post: > > << Aside from the Delphi code changes that are necessary, is it > possible/easy to upgrade an ANSI EDB database to Unicode EDB? >> > > It's possible, but not entirely easy to do. The best solution is this: > > 1) Reverse-engineer the existing database to a script (no data). > 2) Change all instances of ANSI as a collation reference in the > reverse-engineered script to UNI. > 3) Export the data from each table to a CSV file using the EXPORT TABLE > statement. > 4) Run the script above on the new database. > 5) Import the data for each table from the files created in step 3. > > The problem is in Step 4. In EDB Manager, I created a new session (config > file 4IQConfig), gave it a new database, and now running the script gives > this message: > > == > ElevateDB Error #700 An error was found in the statement at line 18 and > column 19 (ElevateDB Error #401 The collation UNI does not exist in the > configuration 4IQConfig) > == > > These are some lines starting with line 18: > EXECUTE IMMEDIATE 'CREATE TABLE "options" > ( > "MaxIdLength" INTEGER, > "RegistrationCode" VARCHAR(64) COLLATE "UNI", > etc. > > What am I doing wrong? > > RJ > > > |
Tue, Sep 29 2009 1:26 AM | Permanent Link |
"Roy Jonker" | Ok. I found the Unicode version of EDBManager ...
RJ "Roy Jonker" <royjonker@canada.com> wrote in message news:684E0770-C338-4EE1-8AA8-F0BBD498DB82@news.elevatesoft.com... > This is from an earlier post: > > << Aside from the Delphi code changes that are necessary, is it > possible/easy to upgrade an ANSI EDB database to Unicode EDB? >> > > It's possible, but not entirely easy to do. The best solution is this: > > 1) Reverse-engineer the existing database to a script (no data). > 2) Change all instances of ANSI as a collation reference in the > reverse-engineered script to UNI. > 3) Export the data from each table to a CSV file using the EXPORT TABLE > statement. > 4) Run the script above on the new database. > 5) Import the data for each table from the files created in step 3. > > The problem is in Step 4. In EDB Manager, I created a new session (config > file 4IQConfig), gave it a new database, and now running the script gives > this message: > > == > ElevateDB Error #700 An error was found in the statement at line 18 and > column 19 (ElevateDB Error #401 The collation UNI does not exist in the > configuration 4IQConfig) > == > > These are some lines starting with line 18: > EXECUTE IMMEDIATE 'CREATE TABLE "options" > ( > "MaxIdLength" INTEGER, > "RegistrationCode" VARCHAR(64) COLLATE "UNI", > etc. > > What am I doing wrong? > > RJ > > > |
Tue, Sep 29 2009 4:22 PM | Permanent Link |
Tim Young [Elevate Software] Elevate Software, Inc. timyoung@elevatesoft.com | Roy,
<< This is from an earlier post: >> As an amendment to that post, the EDB Manager Reverse-Engineering functionality now allows you to specify collation conversions as part of the process, so you can effectively specify that all ANSI collation references are automatically converted to UNI collation references when the script, etc. is generated. -- Tim Young Elevate Software www.elevatesoft.com |
This web page was last updated on Tuesday, April 30, 2024 at 03:55 PM | Privacy PolicySite Map © 2024 Elevate Software, Inc. All Rights Reserved Questions or comments ? E-mail us at info@elevatesoft.com |