public DataSet getDataSetByParm(string cmdText, SqlParameter sqlparm,SqlParameter sqlparm1)
        {
            sqldad = new SqlDataAdapter(cmdText, getSqlConnection());
            sqldad.SelectCommand.Parameters.Add(sqlparm);
            sqldad.SelectCommand.Parameters.Add(sqlparm1);
            dst = new DataSet();
            sqldad.Fill(dst);           
            sqlcon.Close();
            return dst;
        }cmdText是接受的sql语句
 "select BookName,ISBN,BookID,BorrowTime from Borrow TbBooks where Borrow.UserID=@UserID and BorrowState=@BorrowState and Borrow.BookID=TbBooks.BookID";我是想传两个参数进行查询,但是出现错误是“无法绑定有多个部分组成的标识符”

解决方案 »

  1.   

    Sql 语句写错了,“from Borrow TbBooks”,这里是给表命了一个别名,而后面“Borrow.UserID”和“Borrow.BookID”却又用表原来的名称,这是不允许的,如果表加了别名,则在其它的地方就只能使用别名。
    不过我觉得你这里根本没必要用别名的,因为只有一个表,后面的字段名称前也没必要加表名的。写成这样就可以了:
    select BookName,ISBN,BookID,BorrowTime from Borrow where UserID=@UserID and BorrowState=@BorrowState and BookID=BookID
    呵,或许你是两个表,那得写成:
    select BookName,ISBN,BookID,BorrowTime from Borrow,TbBooks where Borrow.UserID=@UserID and BorrowState=@BorrowState and Borrow.BookID=TbBooks.BookID
    两个表中间要加逗号,其实如果是两个表连接的话,最好用 join。
      

  2.   

    缺一个表名。。
    在from 后边加一个表名就成了