internal void AddMissingLocalizationEntries()
{
string sqlString;
dsEliteDB.tblanguageDataTable data;
try
{
data = new dsEliteDB.tblanguageDataTable();
sqlString = "select * from tbLanguage order by id";
Program.DBCon.Execute(sqlString, data);
foreach (dsEliteDB.tblanguageRow dRow in data.Rows)
{
/* add missing entrys for commodities */
sqlString = String.Format("insert into tbcommoditylocalization (commodity_id, language_id, locname)" +
" select C.id as commodity_id, {0} as language_id, C.commodity from tbcommodity C" +
" left join" +
" (select * from tbcommoditylocalization where language_id = {0}) L" +
" on C.ID = L.commodity_id" +
" where L.commodity_id is null;",
dRow.id);
Program.DBCon.Execute(sqlString);
/* add missing entrys for categories */
sqlString = String.Format("insert into tbcategorylocalization (category_id, language_id, locname)" +
" select C.id as category_id, {0} as language_id, C.category from tbcategory C" +
" left join" +
" (select * from tbcategorylocalization where language_id = {0}) L" +
" on C.ID = L.category_id" +
" where L.category_id is null;",
dRow.id);
Program.DBCon.Execute(sqlString);
/* add missing entrys for economylevels */
sqlString = String.Format("insert into tblevellocalization (economylevel_id, language_id, locname)" +
" select C.id as economylevel_id, {0} as language_id, C.level from tbeconomylevel C" +
" left join" +
" (select * from tblevellocalization where language_id = {0}) L" +
" on C.ID = L.economylevel_id" +
" where L.economylevel_id is null;",
dRow.id);
Program.DBCon.Execute(sqlString);
}
}
catch (Exception ex)
{
throw new Exception("Error while adding missing localization entrys", ex);
}
}