我们公司所有的计算机全部是英文的操作系统,开发软件也时英文的。但不知为什么我直接输入sql数据库的中文就能显示,但通过程序例如VB吧,插入的中文就不能正常显示,都显示为???。我的数据库字段已经设为NVARCHAR类型。请大家帮忙看看是怎么回事。

解决方案 »

  1.   

    前面加N了吗?
    insert tablename(colname) values(N'我们')而不是insert tablename(colname) values('我们')
      

  2.   


    select '我们'
    select N'我们'
    ----
    ??(1 行受影响)
    ----
    我们(1 行受影响)
      

  3.   

    是不是插入数据后你才更改为NVARCHAR?
      

  4.   

    N'中文字'
    代表nvarchar类型的常量,可以传入unicode字符集,否则还是会乱码
      

  5.   

    这个是uicode编码的问题
    在字符串前面加N
      

  6.   


    select  N'中文字'
      

  7.   

    select  N'中文字符'
    编码问题