2 louquanpan7859 louquanpan7859 于 2017.08.29 16:41 提问

ORA-00936: 缺少表达式。一直报这个错,快疯了!

public DataSet Exchange(DateTime date1, DateTime date2)
{
string connString = ConfigurationManager.ConnectionStrings["connString"].ToString();
using(OleDbConnection conn = new OleDbConnection(connString))
{
conn.Open();
string select = "SELECT E.RQ 日期,C.XM 医生姓名,E.ID 医生工号,E.YZJE 西药总金额,E.ZZJE 中成药总金额,E.CZJE 草药总金额 FROM YSCFJE_TEST E,ZGXX C WHERE E.ID=C.ID AND (E.RQ BETWEEN @date1 AND @date2) ORDER BY E.RQ";
OleDbCommand cmd2 = new OleDbCommand(select,conn);
cmd2.Parameters.Add("@date1", OleDbType.Date);
cmd2.Parameters.Add("@date2", OleDbType.Date);
cmd2.Parameters["@date1"].Value = date1;
cmd2.Parameters["@date2"].Value = date2;
OleDbDataAdapter da = new OleDbDataAdapter();
da.SelectCommand = cmd2;
DataSet ds = new DataSet();
da.Fill(ds);
return ds;
}
}
连接字符串写在配置文件里了,是没有问题的。大神们帮我看看到底哪儿错了,万分感激。

2个回答

qwx123_abc
qwx123_abc   2017.08.29 23:58

看样子 SQL系列的数据库
字段别名 试试 单引号 或 双引号 包起来。

louquanpan7859
louquanpan7859   2017.08.30 13:21

问题解决了。
最后才发现我用的是Oracle数据库,参数前应该加:才对,@好像是sql server...
哇 我是真的菜。。。

Csdn user default icon
上传中...
上传图片
插入图片
准确详细的回答,更有利于被提问者采纳,从而获得C币。复制、灌水、广告等回答会被删除,是时候展现真正的技术了!
其他相关推荐
Activiti5.19查询报错[java.sql.SQLSyntaxErrorException: ORA-00936: 缺失表达式]
Activiti5.19查询报错[java.sql.SQLSyntaxErrorException: ORA-00936: 缺失表达式]
ORA-00936 缺失表达式
oracle 中 表 expense 的 id是int类型的 ,name是nvarchar2(50)类型,days是int类型的,advance 字段类型是number(10,2)类型的, 当是在winform中对应的textBox中为空时,下面的插入语句提示ORA-00936
ORA-00936 缺失表达式
缺失表达式肯定是失去了 oracle 中 表 expense 的 id是int类型的 ,name是nvarchar2(50)类型,days是int类型的,advance 字段类型是number(10,2)类型的, 当是在winform中对应的textBox中为空时,下面的插入语句提示ORA-00936   缺失表达式 烦请大侠帮忙解决啊?急急急!!!不胜感激涕零!!!! i
java.sql.sqlexception:ora-00936:缺失表达式
一个变量有一个值为空。你妹的!
oracle ORA-00936: missing expression 报错的几种情况和解决方法
oracle ORA-00936: missing expression 报错的几种情况和解决方法 2013-04-29 17:20:38 分类: Oracle ORA-00936: missing expression    Cause: A required part of a clause or expression has been omitted. For
Mybatis框架中foreach导致:ORA-00936: missing expression
面试官的问题:查询条件有:年级(一年级,二年级,三年级等等),年龄(10~15,15~20等),班级(127,128,129) 我要查询一年级和二年级的学生,这个sql语句怎么写? 前端用ajax传字符串,其中用逗号隔开,后台用一个字符串接收,然后定义数组,用逗号截取这个字符串,并用刚刚定义的数组接收, 在对应的对象中设置一个字符串数组变量,将刚刚的数组set到这个对象的数组变量中,  然后放
java.sql.SQLSyntaxErrorException: ORA-00936: 缺失表达式
全部错误Exception in thread "main" java.sql.SQLSyntaxErrorException: ORA-00936: 缺失表达式    at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:439)    at oracle.jdbc.driver.T4CTTIoer.processError(T4...
ORA-00936: 缺失表达式
ORA-00936: 缺失表达式,原因,出入数据的类型不是varchar2
ORA-00936 ORA-06512
错误代码: execute immediate 'select t.user_login into ' || resultName ||' from t_user t where t.user_id='||userId ; 解决方法: 动态sql不使用select ... into结构
ORA-00936-Missing-Expression
<br />关于ORA-00936网上找到的处理方法的:<br />1:<br />ORA-00936, ORA-936 is a generic error indicating a missing expression in the SQL statement that you have just executed.  Most probably this error is indicating that you have either missed a , [ comma ] or the from