public static bool DeleteCourse(string courseID,string ip)
        {
            int result = -1;
            string deleteCourse = String.Format(@"delete from Answers where paperID in (select paperID from TestPaper where paperName = '{0}') delete from Questions where paperID in (select paperID from TestPaper where paperName = '{1}') delete  from TestPaper where  paperName = '{2}'",courseID,courseID,courseID);
            SqlCommand comm = CreateCommand(ip);
            comm.CommandText = deleteCourse;
             result = ExecuteNonQuery(comm);            return result>-1;
        }这样写可以吗。好像执行的时候不成功啊!

解决方案 »

  1.   

    delete from Answers where paperID in (select paperID from TestPaper where paperName = '{0}');
    ...;
    ....
      

  2.   

    换种思路写SQL语句
    delete from Answers where paperID in ('paperID1','paperID2','paperID3');
      

  3.   

    string deleteCourse = 
    String.Format(@"delete from Answers where paperID in 
    (select paperID from TestPaper where paperName = '{0}' or paperName = '{1}' or paperName = '{2}') 
    ",courseID,courseID,courseID);
      

  4.   

    string deleteCourse = String.Format(@"delete from Answers where paperID in (select paperID from TestPaper where (paperName = '{0}' or paperName = '{1}' or paperName = '{2}')) delete from Questions where paperID in (select paperID from TestPaper where paperName = '{1}') delete  from TestPaper where  paperName = '{2}'",courseID,courseID,courseID);
    用StringBuilder构建SQL语句
      

  5.   

    删除语句可以更改的,不能写这么多SQL语句这样连接吧