两个SQL字符串一样。。。sql 能得到DataReader集。。。sql2 取不出集。。。
两个SQL字符串一样。。。
sql 能得到DataReader集
sql2 取不出集。。。
public GetDFDFD(DataTable dt){
         string[] BB = new string[] { "'d41d8cd98f00b204e9800998ecf8427e      '", "'" + dt.Rows[1]["Description"].ToString() + "      '" };
         string value = "";
         string strconn = "user id=sa;password=sa;";
         strconn += "initial catalog=vba;Server=BB-SX6PP2ZULG;";
         strconn += "Connect Timeout=30";
         string sql = "",sql2="";         
         sql = "SELECT [path_portfolio] FROM [vba].[dbo].[vba_path_title] where [path_md5]=" + BB[0];
         sql2 = "SELECT [path_portfolio] FROM [vba].[dbo].[vba_path_title] where [path_md5]=" + BB[1];
         SqlCommand command = new SqlCommand();
         SqlConnection conn = new SqlConnection(strconn);
         conn.Open();
         command.Connection = conn;
         command.CommandText = sql;
         SqlDataReader dr = command.ExecuteReader();
         dr.Read();
         if ((bool)dr.HasRows)
         {
             dr.Read();
             value = dr["path_portfolio"].ToString() + sql + sql2;
         }
         dr.Close();
         command.Dispose();
         conn.Close();
}
输出
sql=SELECT [path_A] FROM [DB].[dbo].[A] where [path]='d41d8cd98f00b204e9800998ecf8427e '
sql2=SELECT [path_A] FROM [DB].[dbo].[A] where [path]='d41d8cd98f00b204e9800998ecf8427e '
------解决方案--------------------
看你代码好像都没有对sql2进行
conn.Open();  
command.Connection = conn;  
command.CommandText = sql;  
SqlDataReader dr = command.ExecuteReader();  
dr.Read();  
if ((bool)dr.HasRows) {...}
吧!!!
------解决方案--------------------
两个SQL语句都在查询分析器里跑下看看,可能有空格的问题,空格是必须的吗?
sql =SELECT [path_A] FROM [DB].[dbo].[A] where [path]='d41d8cd98f00b204e9800998ecf8427e '  
sql2=SELECT [path_A] FROM [DB].[dbo].[A] where [path]='d41d8cd98f00b204e9800998ecf8427e '  
或改成这样试下
C# code
sql2 = string.Format("SELECT [path_A] FROM [vba].[dbo].[A] where [path_md5]='{0} '",dt.Rows[1]["Description"].ToString());