明显的大错误,第一次if外
cmd=new SqlCommand(sql,con.link);
dr=cmd.ExecuteReader();
而第二个if语句又用了一次
cmd=new SqlCommand(sql,con.link);
dr=cmd.ExecuteReader();
cmd=new SqlCommand(sql,con.link);
dr=cmd.ExecuteReader();
而第二个if语句又用了一次
cmd=new SqlCommand(sql,con.link);
dr=cmd.ExecuteReader();
sql="select * from UserSongs";
SqlDataAdapter da=new SqlDataAdapter(sql,con);
DataSet ds=new DataSet();
da.Fill(ds,"UserSongs");
DataTable dt=ds.Tables["UserSongs"];//把表usersongs绑定到datatable
////////////
如果想读哪个列的内容就用
dt.Columns["列名"].ToString(); //循环读出,然后再用你本来的那个循环
//执行第二个表的内容
//////////第二个表就用DataReader来操作
wish u good luck
Greatsft
{int uid;
uid=(int)dr["uid"];
dr.close(); do
{
//这里要去读出用户的名字
sql="select * from mp3_uinfo where uid="+uid;
cmd=new SqlCommand(sql,con.link);
dr=cmd.ExecuteReader();
if (dr.Read())
{
Response.Write ("正确");
}
}while(dr.Read());
}
你这样只能读一个uid所对应的mp3,而楼主要的是循环读出每一个
SqlCommand cmd;
SqlDataReader dr;
SqlDataAdapter myAda=new SqlDataAdapter();
sql="select * from UserSongs";
con.open();
cmd=new SqlCommand(sql,con.link);
DataSet mySet=new DataSet();myAda.SelectCommand=cmd;
myAda.Fill(mySet,"kk");
//dr=cmd.ExecuteReader();
if (mySet.Tables["kk"].Rows.Count<=0)
{
Response.Write ("无记录");
return null;//退出
}
int uid;
DataTable myTable=mySet.Tables["kk"];
foreach(DataRow myRow in myTable.Rows)
{
uid=(int)myRow["uid"]
//这里要去读出用户的名字
sql="select * from mp3_uinfo where uid="+uid;
SqlCommand cmd1=new SqlCommand(sql,con.link);
dr=cmd.ExecuteReader();
if (dr.Read())
{
Response.Write ("正确");
}
dr.Close();
}
foreach 循环用于读出每个uid,再用刚才第二个语句查找该uid对应的mp3名