日期:2014-05-18  浏览次数:21027 次

.net 程序发布前后结果不一致
下面的这个方法用VS2005在本机运行、调试是有一条记录的,但是发布到服务器上就查不到数了。测试了很久都没找到原因...请高手帮忙解决下。谢谢!!!!!

C# code

 public string getcode(string kehuid, string kehuleibie, string riqi, string bianm)
    {
        OracleConnection con = new OracleConnection("Data Source=aa;User ID=test;Password=test");
        string sql = "select * from vw_jiage1 where (客户编码='" + kehuid + "' or 客户类别 like '%" + kehuleibie + "%') and 开始日期 < '" + riqi + "' and '" + riqi + "' < 结束日期 and 物料ID like '" + bianm + "'";
        OracleCommand com = new OracleCommand(sql,con);
        con.Open();
        OracleDataReader dr = com.ExecuteReader();
        string aa = "0";
        while (dr.Read())
        {
            aa = dr["整件单价"].ToString();
        }
        dr.Close();
        con.Close();
        return aa;
    }








------解决方案--------------------
数据库位置不对吧,代码操作的和你查看的不是一个库

另外你打印出 sql 的内容去数据库执行下试试看是多少
------解决方案--------------------
数据库是本地的还是服务器上的啊,估计是数据库链接的地址不对
------解决方案--------------------
服务器上用程序执行别的sql语句。是否正常?
是不是数据库连接有问题
------解决方案--------------------
1、你把SQL语句放数据库中执行是否有数据;
2、再看数据库通过程序连接是否正常;
3、再单步调试下程序;
------解决方案--------------------
把你的SQL输出出来,直接到 PL/SQL里执行试试
------解决方案--------------------
根据你说的这些估计只有一个可能性了,那就是你这个文件根本就没有生成成功,或者服务器上运行的文件不是你新发布上去的版本。

怪异事件多以外部原因居多,多仔细看看文件是否生成有问题,运行位置是不是发布上去的文件
------解决方案--------------------
看代码有结束日期 和开始日期,那么看下服务器上时间和本地时间是否一致
------解决方案--------------------
探讨
谢谢上面的各位了,现在可以确定是日期的问题。因为我把那个结束日期和开始日期去掉,运行的结果就相同了。

但是这个日期还不知道怎么设置好。

------解决方案--------------------
Debug,Release?
------解决方案--------------------
探讨

引用:
谢谢上面的各位了,现在可以确定是日期的问题。因为我把那个结束日期和开始日期去掉,运行的结果就相同了。

但是这个日期还不知道怎么设置好。

格式化一下