string getGoodsList()
{
string str="select goodsid,goodsname,goodsunit,goodstype,packname,prodarea,zxcolumn10,approvedocno,varietyname,storageconditionname from pub_goods_v where exists(select present_goods.* from present_goods where present_goods.goodsid = pub_goods_v.goodsid and present_goods.goodsqty>1 and present_goods.companyid=14)"; string strResult="<table>";
try
{
OracleConnection ocn = new OracleConnection(PresentConn.GetConnectionStr());
OracleCommand ocmd = new OracleCommand(str,ocn);
ocn.Open();
OracleDataReader odr = ocmd.ExecuteReader();
while (odr.Read())
{
string strTable = "<tr>";
for (int i = 0; i < odr.FieldCount; i++)
{
strTable += "<td>" + formatMyString(odr[i].ToString()) + "</td>";
}
strTable += "</tr>";
strResult += strTable;
}
ocn.Close();
strResult += "</table>";
return strResult;
}
catch (Exception Ex)
{
string strTemp = Ex.Message;
return "<DataSet></DataSet>";
}
}就这个,没有结果返回,也没有报错,而查询语句在数据库中是可以查出数据来的
高手帮帮忙,这东西弄得我太伤心了
{
string str="select goodsid,goodsname,goodsunit,goodstype,packname,prodarea,zxcolumn10,approvedocno,varietyname,storageconditionname from pub_goods_v where exists(select present_goods.* from present_goods where present_goods.goodsid = pub_goods_v.goodsid and present_goods.goodsqty>1 and present_goods.companyid=14)"; string strResult="<table>";
try
{
OracleConnection ocn = new OracleConnection(PresentConn.GetConnectionStr());
OracleCommand ocmd = new OracleCommand(str,ocn);
ocn.Open();
OracleDataReader odr = ocmd.ExecuteReader();
while (odr.Read())
{
string strTable = "<tr>";
for (int i = 0; i < odr.FieldCount; i++)
{
strTable += "<td>" + formatMyString(odr[i].ToString()) + "</td>";
}
strTable += "</tr>";
strResult += strTable;
}
ocn.Close();
strResult += "</table>";
return strResult;
}
catch (Exception Ex)
{
string strTemp = Ex.Message;
return "<DataSet></DataSet>";
}
}就这个,没有结果返回,也没有报错,而查询语句在数据库中是可以查出数据来的
高手帮帮忙,这东西弄得我太伤心了
{
string strTable = " <tr>"; 这句有问题,你每次循环,变量重新new了,原来的值没了建议这样:
string strTable = "";
while (odr.Read())
{
strTable += " <tr>";
for (int i = 0; i < odr.FieldCount; i++)
{
strTable += " <td>" + formatMyString(odr[i].ToString()) + " </td>";
}
strTable += " </tr>";
strResult += strTable;
}
由于我用的OBJECTBROWSER来管理数据库,因为插入的数据还没有提交到数据库,而在OB里面却查得到,我误认为在数据库里也能查得到,已致于其后的难以想象的结果.多谢上面两位大侠