日期:2013-03-01  浏览次数:20552 次

问题表现:
在 SQL Server 2005 Manger Studio中打开表,无法输入中文,只能输入英文
 
问题重现:
1. 我们建立如下三个测试表:
CREATE TABLE ta(
    id int IDENTITY,
    col varchar(50)
)
 
CREATE TABLE tb(
    col varchar(50),
    id int IDENTITY
)
 
CREATE TABLE tc(
    col1 varchar(50),
    col2 as col1
)
 
2. 在SQL Server 2005 Manger Studio 中打开上述三个表进行数据录入,你会发现是能录入中文的
 
3. 那么错误毛病是如何再现的呢?继续测试,在上面建立的测试表中,每个表都有一个只读的列,如果把你把光标挪动到该列,再移回到可写列,你就会发现,无法开启中文输入法了。
 
结论:
在 SQL Server 2005 Manger Studio 中录入数据的时候,不要把光标挪动到只读的列中,否则你的中文就不要想录入了
另外,设计表的时候可能也得留意,如果你想在SQL Server 2005 Manger Studio 中录入中文,则不要把只读列设置为第1列,比如上面的测试表 ta, 如果你曾经录入了数据,再用SQL Server 2005 Manger Studio 打开的时候,你会发现光标是定位在第1条记录的第1列(标识列,也是只读列)的,这样会导致你基本无法录入中文
 
这应该算是SQL Server 2005 Manger Studio 的一个BU吧
 
小提示:
在 SQL Server 2005 Manger Studio 中,只读列显示的数据是灰色的(比正常列的颜色稍淡一些,细心看一下就能区分出来