我无法在我们较旧的 SQL 2000 Server 上复制它,我当然希望 SQL Express 2008 在处理多语言问题方面比 SQL 2000 有更多的功能。
我使用以下代码作为测试:
private const string jp2code = "jp2code.net";
private void Form1_Activated(object sender, EventArgs e) {
string croatianIn = "ŠĐČĆŽšđčćž";
string croatianOut = TestCroatian(croatianIn);
Console.WriteLine(String.Compare(croatianIn, croatianOut));
}
private string TestCroatian(string input) {
string result = null;
string sql = "INSERT INTO SUITEMSG (MsgFrom, [Message]) VALUES (@MsgFrom, @Message);";
using (SqlCommand cmd = new SqlCommand(sql, Data.Connection)) {
cmd.Parameters.Add("@MsgFrom", jp2code);
cmd.Parameters.Add("@Message", input);
cmd.Connection.Open();
cmd.ExecuteNonQuery();
}
sql = "SELECT [Message] FROM SUITEMSG WHERE MsgFrom=@MsgFrom;";
using (SqlCommand cmd = new SqlCommand(sql, Data.Connection)) {
cmd.Parameters.Add("@MsgFrom", jp2code);
cmd.Connection.Open();
result = cmd.ExecuteScalar().ToString();
}
return result;
}
输入和输出都是相同的。
你确定你没有做其他事情吗?
您能否更新您的问题以发布一个简短的代码示例,就像我在上面所做的那样来显示什么不起作用?