C# 语法错误 (操作符丢失) 在查询表达式

来源:百度知道 编辑:UC知道 时间:2024/05/07 05:12:30
String KaHaoSql;
KaHaoSql = "Select [挂号日期],[诊疗卡号],[班次],[诊别],[科室],[医生] From [挂号管理] where [诊疗卡号]='" + textBox11.Text + "'";
oleDbCommand2.Connection = oleDbConnection1;
oleDbCommand2.CommandType = CommandType.Text;
oleDbCommand2.CommandText = KaHaoSql;
oleDbDataAdapter2.SelectCommand = oleDbCommand2;
dataSet21.Clear();
oleDbDataAdapter2.Fill(dataSet21);
部分程序如上所示
我是想从textBox11输入条件,然后建符合条件的查询出来,但是问题如图所示,还有我[诊疗卡号]的属性是数据,将textBox11.Text转换成数据是这样吗?KaHaoSql = "Select [挂号日期],[诊疗卡号],[班次],[诊别],[科室],[医生] From [挂号管理] where [诊疗卡号]='" +Convert.ToInt32( textBox11.Text )+ "'";
那么转换成日期就这样吗? KaHaoSql = "Select [挂号日期],[诊疗卡号],[班次],[诊别],[科室],[医生] From [挂号管理] where [诊疗卡号]='" +Convert.ToDateTime( textBox11.Text )+ "'";
但是为什么有错误

把textBox11.Text 俩侧的单引号去掉试下。大概像这样。
KaHaoSql = "Select [挂号日期],[诊疗卡号],[班次],[诊别],[科室],[医生] From [挂号管理] where [诊疗卡号]=" + textBox11.Text + "";
因为[诊疗卡号]的属性是数据,加上单引号就成字符串类型了。

还有你的sql文中的数据最好先检查合法性在拼进去。否则很容易出问题的。
像这句Convert.ToInt32( textBox11.Text )如果textBox11.Text 没有输入的话就会抛例外了。

KaHaoSql = "Select [挂号日期],[诊疗卡号],[班次],[诊别],[科室],[医生] From [挂号管理] where [诊疗卡号]=" + textBox11.Text + "";

试试 不行 我再看下

KaHaoSql = "Select [挂号日期],[诊疗卡号],[班次],[诊别],[科室],[医生] From [挂号管理] where [诊疗卡号]=" + textBox11.Text ;

应该[dataset名,"虚表名"] 你试下