cs文件中:
string strSql = "SELECT SYSDATE \"Today DateTime\" FROM DUAL";
execute strSql; // 出错,请大虾帮忙解决,谢先。到数据库中实际执行的sql语句为:
SELECT SYSDATE \"Today DateTime\" FROM DUAL; //错误将双引号前面的转义字符“\”去掉,在执行sql的时候,C#会又自动在双引号前面加上。导致我精神崩溃^_^Oracle中执行:
SELECT SYSDATE "Today DateTime" FROM DUAL; // 正确

解决方案 »

  1.   

    string strSql = "SELECT SYSDATE \"Today DateTime\" FROM DUAL";
    execute strSql; <<<<------------------strsql是字符串,能直接执行?没用过oracle
      

  2.   

    建议你将要传入到SQL语句中的\"Today DateTime\"先赋值给一个变量,然后在用这个变量和SQL剩余的部分去组合成你要的SQL语句
    我以前就是这样处理类似问题,应该没有问题?
      

  3.   

    string strSql = "SELECT SYSDATE 'Today DateTime' FROM DUAL";
      

  4.   

    OracleConnection con = new OracleConnection();
    OracleCommand command = new OracleCommand();
    con.ConnectionString = "Password=manager;User Id=system;Data Source=XXX";
    con.Open();
    command.Connection = con;
    command.CommandText = "SELECT SYSDATE \"Today DateTime\" FROM DUAL";
    OracleDataReader reader = command.ExecuteReader();这样是好用的,说明你得SQL语句书写是没有错误的。
    你的 execute strSql; 是什么意思?
      

  5.   

    感谢大家。lmtz(忽隐忽现) () 说的是对的,我也是搞晕了。另:string  strSql  =    "SELECT  SYSDATE  'Today  DateTime'  FROM  DUAL  "; 
    在oracle中执行是错误的