Soluling home   Document home

Database as Translation Storage

Database as Translation Storage

You might have existing translations stored in a database. If you have, Soluling can likely import those translations into your project or translation memory. Soluling can read the database if it uses one of the following structures.

Structure
Description
Each row contains several fields, one for each supported language.
Fields
Each row contains several fields, one for each supported language.

Each row contains one translation in one language and the language code of the language of the translation.
Rows

Each row contains one translation in one language and the language code of the language of the translation.

Database translation storage is always read-only. Soluling only reads data from it. If you need to save translations into a database, use translation memory or export data into a file and then import translations from the file into the database.

Single row, multiple fields

The table contains one or more rows. Each row contains two or more translation fields. Each field contains a value in one language.

English German Japanese
United States Vereinigte Staaten アメリカ合衆国
Germany Deutschland ドイツ
Japan Japan 日本

The table can also contain comment fields. In addition to translation and comment field, the table can contain any fields, but Soluling just ignores those fields. It only reads data from the translation and comment fields.

Multiple rows

The table contains two or more rows. Each row contains an id field, a translation field, and a language field. The id fields contain the id of the item. The translation field contains the translations in one language. The language field contains the language code.

Id Language Translation
0 en United States
0 de Vereinigte Staaten
0 ja アメリカ合衆国
1 en Germany
1 de Deutschland
1 ja ドイツ
2 en Japan
2 de Japan
2 ja 日本

The table can also contain a comment field. In addition to id, language, translation, and comment fields, the table can contain any fields, but Soluling just ignores those fields. It only reads data from the id, language, translation, and comment fields.

Samples

<newtoo_data_dir>\HowTo\ImportExport\Translations.accdb is an Access database that contains translations. The database contains several tables that each store data in a different structure.

Table Structure Descriptions
FieldTable multiple fields Contains only translation fields.
FieldCommentTable multiple fields As above but contains also comment fields.
RowTable multiple rows Simplest row structure that contains id, language and translation fields. The primary key is a combination of id and language fields.
RowLanguageFirstTable multiple rows As above but the language field is before the id field.
RowIdTable multiple rows As RowTable, but id and language fields are not part of primary key. Instead, there is a separate row field that contains a unique row key.
RowStringIdTable multiple rows As RowTable, but id field contains string ids instead if integer ids.
RowLangIdTable multiple rows As RowTable but language field contains Windows locale codes (integer)instead of ISO language ids (string).
Invalid - A table that is not suitable for importing. It contains id and value fields but no language field.