我需要本地化SQL Server 2008數據庫中表中的數據。選擇記錄時,每種語言都需要自己的排序順序。我在另一個線程中被告知,爲每種語言創建單獨的表將使幾乎不可能在存儲過程中創建select語句。返回文化的記錄。但是,如果我將每種語言的所有數據放在一個單獨的表中並且行數不同,我該如何允許不同的排序順序?我不會爲每種語言分隔列,而是多行。用於提取記錄的select語句是否具有與其關聯的排序順序,還是必須爲表或列存儲?本地化SQL Server 2008表中的數據和排序
回答
我建議你創建一個名爲ie的額外列的本地化表。將存儲語言的Locale
。由於所有數據都將始終包含在同一列中,將不會有任何需要不同的排序順序(除非用戶實際需要的數據或遞增/遞減順序不同...總之:
樣品表:
ID | Name | Description | Locale
--------------------------------
1 Me This is me en
2 Ich Das bin ich de
3 You This is you en
4 Du Das bist du de
....
你的排序順序將保持不變。所有你獲得一個額外的where
條款
select ID,
[Name],
Description
from SampleTable
where Locale = 'en'
order by [Name]
爲了讓事情更好,我會用文化語言環境abreviations創建查找表正常化這些表,其他表格(就像這樣我創建的)將由外鍵使用。
但在西班牙語中,整理與英語不同。我需要不同的分頁設置,因此按順序將返回文檔順序中的行。 – user31673 2009-11-09 17:57:45
那麼如果你將排序規則設置爲Accent敏感,它將適用於英語,不是嗎?我通常使用斯洛文尼亞_CI_AS它工作沒有概率。 – 2009-11-09 18:43:34
要做的第一件事是添加一列以確定該行所屬的文化。之後,對該列進行過濾簡單。
Select * from myTable where Culture=1003
您也可以考慮將視圖添加到該表中。從那裏你可以添加索引和排序到你的心中的內容。
- 1. 的SQL Server 2008數據排序()
- 2. 本地SQL Server 2008 Express數據上傳到基於Web的SQL Server 2008
- 3. SQL Server 2008排序規則
- 4. SQL Server本地化
- 5. 排序過程的SQL Server 2008中
- 6. 對帶有鏈接表的SQL Server 2008數據庫中的表進行排序以解決SQL 2008問題
- 7. 如何對SQL Server 2008數據透視表結果列和行進行排序?
- 8. 數據庫排序SQL Server
- 9. SQL Server:拉和更新本地數據
- 10. 排名函數在SQL Server 2008中
- 11. SQL Server Reporting Services - 本地化報告?
- 12. SQL Server 2008 R2的 - 連接到本地數據庫
- 13. SQL Server 2008數據庫排序規則轉換
- 14. 將SQL Server 2005數據複製到2008但不是排序
- 15. Linq到SQL,SQL Server 2008和優化
- 16. Team Foundation Server 2008管理Sql Server 2005和2008數據庫更改
- 17. 我的數據庫的表清理本身(SQL Server 2008 Express的)
- 18. 在GUID上排序SQL Server 2008
- 19. SQL Server 2008 - 高級搜索/排序
- 20. 變化(本地)在SQL Management Studio中2008
- 21. 無法連接到本地SQL Server 2008數據庫
- 22. SQL Server 2008數據類型
- 23. 數據導入SQL Server 2008
- 24. SQL Server 2008數據保護
- 25. 數據複製 - SQL Server 2008
- 26. 在SQL Server 2008中排序和重新設置
- 27. SQL Server 2008中的數據庫備份
- 28. SQL Server 2008中的數據倉庫
- 29. SQL Server 2008自動化數據庫刪除,創建和填充
- 30. 表值參數,SQL Server 2008
縮進和表格聲明請。 – 2009-11-09 17:15:26