c# 数据库中姓名按拼音排序 提示错误
我按联系方式排序都正常,但是按姓名拼音排序或是笔画排序提示错误,语句如下:
C# code
private void button15_Click(object sender, EventArgs e)//排序按钮
{
myorderby = "SELECT 姓名,性别,生日 FROM person ORDER BY 姓名 COLLATE Chinese_PRC_CS_AS_KS_WS ASC";//按拼音排序
myda = new OleDbDataAdapter(myorderby, mycon);
DataSet myds = new DataSet();
myda.Fill(myds);
this.dataGridView5.DataSource = myds.Tables[0].DefaultView;
}
错误信息:显示“myda.Fill(myds);”这一行错误——未处理OledbEXCEPTION“IErrorInfo.GetDescription 因 E_FAIL(0x80004005) 而失败。”
------解决方案--------------------用odbc
------解决方案--------------------myorderby = "SELECT 姓名,性别,生日 FROM person ORDER BY 姓名 COLLATE Chinese_PRC_CS_AS_KS_WS ASC";//按拼音排序
SqlDataAdapter myda = new SqlDataAdapter(myorderby, mycon);
DataSet myds = new DataSet();
myda.Fill(myds.table[0]);
这样不好点吗?
------解决方案--------------------这位,"姓名,性别,生日"这些可以用英文表示吗,哎,这要是拿到公司里去,不说你才怪,还有,你排序时,好像就是按拼音排序,因为都是字符串,没必要后面还加这些“COLLATE Chinese_PRC_CS_AS_KS_WS ”。
自己好好想想