Data localization in SQL Server with GUIDs or…?

First of all, I'd strongly recommend using an existing standard for the localization identifiers - don't re-invent yet another system! Use the ISO-639 standard codes for language, e.g. "en" for English, "fr" for French etc See Wikipedia for a list of all the defined codes Secondly, in my experience and my judgment, I would use a language table per entity We typically have some "system name" on the main table, e.g. The English text, and then we have a table "(entity)_TX" for the textual representation in various languages Something like this: TABLE CustomerType CustomerTypeID INT IDENTITY(1,1) PK CustomerTypeName VARCHAR(100) -- English "system" name, e.g. "Gold customer" TABLE CustomerType_TX CustomerTypeID INT LanguageID CHAR(2) -- ISO-639 codes CustomerTypeText VARCHAR(200) -- translated texts To me, this is clearer and more explicit and more "intuitive" than having a single, GUID-based encoding scheme.

First of all, I'd strongly recommend using an existing standard for the localization identifiers - don't re-invent yet another system! Use the ISO-639 standard codes for language, e.g. "en" for English, "fr" for French etc.See Wikipedia for a list of all the defined codes. Secondly, in my experience and my judgment, I would use a language table per entity.

We typically have some "system name" on the main table, e.g. The English text, and then we have a table "(entity)_TX" for the textual representation in various languages. Something like this: TABLE CustomerType CustomerTypeID INT IDENTITY(1,1) PK CustomerTypeName VARCHAR(100) -- English "system" name, e.g. "Gold customer" TABLE CustomerType_TX CustomerTypeID INT LanguageID CHAR(2) -- ISO-639 codes CustomerTypeText VARCHAR(200) -- translated texts To me, this is clearer and more explicit and more "intuitive" than having a single, GUID-based encoding scheme.

1 for using the standard codes. – devstuff Mar 4 '10 at 8:21 That is my option #1 actually. Well, standard codes like en-gb and en-us are a bit over char(2) so I'll have to widen that a bit in this case :) – BuzzBubba Mar 4 '10 at 8:28 please keep in mind that GUIDs are not guaranteed to be unique either...granted there is a high improbability that you will ever see a duplicate but still... – espais Mar 4 '10 at 10:18 @BuzzBubba: yes, if you need to distinguish the regionalized languages like "en-GB" vs. "en-US" vs. "en-CA", then yes, you need some more characters.

But still - I'd use the standard codes, if ever possible - no need to invent yet another set of constants for something that's really already been solved :-) – marc_s Mar 4 '10 at 11:40 Wouldn't CustomerType_TX. CustomerTypeText need to be nvarchar? – Thomas Mar 4 '107 at 3:40.

First of all, I'd strongly recommend using an existing standard for the localization identifiers - don't re-invent yet another system! Use the ISO-639 standard codes for language, e.g. See Wikipedia for a list of all the defined codes.

I cant really gove you an answer,but what I can give you is a way to a solution, that is you have to find the anglde that you relate to or peaks your interest. A good paper is one that people get drawn into because it reaches them ln some way.As for me WW11 to me, I think of the holocaust and the effect it had on the survivors, their families and those who stood by and did nothing until it was too late.

Related Questions