There are many ways to understand database localization. Sisulizer covers them at all levels: clone (database), table, row (2 flavours), and field. The four methods Sisulizer offers to localize your databases are as follows:
Using this method, Sisulizer creates a complete clone of the database. The result is an exact copy of the original structure. The structure, including all table and field names of the database of the clone, is the same. The databases differ only in the database name.
The clone method creates one database for each localization language, here German and Japanese.
Advantage: No need to change the database structure; only the database content differs.
With this method (in 2 flavours), Sisulizer copies the original table row for each language. The copied rows are equal to the original one, except the language field value is different. The field value matches the language of the row. Those fields that have been marked to be localized contain a localized value. The result might look like this:
The translation is spread across multiple rows. ID and Language fields together are the unique database index.
Advantage: Just a small change in database structure which is very easy for a software developer who accesses the database content to implement.
Sisulizer now offers the possibility to use a foreign key as unique database index to identify translations. Therefore the new row localization method does not need a combined index of ID and Language. To create new ID values Sisulizer calls your stored procedure. Please refer the Sisulizer online-help for detailed instructions.
This method adds localized tables for those tables that you want to localize. The localized tables contain only the primary key and those fields that are localized. The result is written to new tables with the same structure. The database tables only have different names, like description and description_ja:
On the left, you see the original table description and, on the right, the translated table description_ja.
The difference with the clone method is that the language tables are in the same database. The clone method creates a database for each language.
Advantage: Just a small change is required in the database structure which is very easy for a software developer who accesses the database content to implement.
In this method, Sisulizer updates the values of the localized fields in the same database row. The localized fields are equal to the original field, except that they contain data in a different language and their names differ, of course.
For example, if the original language is English and you want to localize the database in German and Japanese, you can add German and Japanese fields for those fields that contain strings for localization.
Picture shows a database table with original value and translated fields for German and Japanese language. Not all fields occur three times, because the Population field i.e. does not need to be translated.
The fields Name_de and Name_ja contain the translations.
Advantage: You need to change only the database structure of all tables with localizable content. The implementation is easy for a software developer who accesses the database content. The best advantage is that you do not need to keep redundant data.