软件人生

Jack(子游)

我的目标:做世界一流的软件,成为优秀的项目管理者 主要专注行业: Cms(content manage system) OA CRM 在线营销系统 在线调查
  博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理

Sql server 国际化的支持,查询乱码

Posted on 2009-07-06 10:00  子游  阅读(528)  评论(0)    收藏  举报

 

  如果 Sql server 2005 的数据库字符集是非中文,例如是SQL_Latin1_General_CP1_CI_AS什么的。

  当某个表的自动又有nvarchar时候,那么你查询,修改,或者是视图,存储过程中,都会出现乱码或者查询不出结果。

  例如:

    SELECT 
      StatusName =
      case xxInstance.[Status]
      when 'Running' then '运行中'
     else '起草中'
     End FROM [WorkflowInstanceBase]  或者

      select Name From contacts where [name]='速强'

     第1条执行的结果是,会出现乱码

     第2天执行的结果是,没有结果集

    如果想获取结果必须对上述sql 进行修改:

 

    SELECT 
      StatusName =
      case xxInstance.[Status]
      when 'Running' then N'运行中'
     else N'起草中'
     End FROM [WorkflowInstanceBase]  或者

      select Name From contacts where [name]=N'速强'

   这样就能查询出结果。

快乐软件人生