弗尤博客(四)

在上一篇博文中,犯了一个错误,SQL语句中应该加上条件,没加条件当然会把uid下的所有bid查询出来,我还异想天开的加top让只显示第一行。这个问题我是在首页不管点击哪个博文标题,都会显示第一个文章是发现的。

正确的SQL语句

select * from Blogs left join UserInfo on Blogs.uid=UserInfo.uid where bid=@bid

相应的 三层架构参数要改变

在我想明白这个问题后,修改时报错:必须声明表变量。

检查一番后发现问题

string sqlText = "select * from Blogs left join UserInfo on Blogs.uid=UserInfo.uid where bid=@bid ";
            string[] paras = { "@bid" };
            object[] values = { b.Bid };
            DataTable dt = new DataTable();
            dt = DA.GetDataTable(sqlText, CommandType.Text, paras, values);
            return dt;

粗体字部分object类型我写成string 导致UI层需要转换类型,我还二了的呵的改来改去,bid我定义的时候是int类型

paras, values我写的为null
这两个错误都是因为我图省事,复制粘贴上边的代码导致的,应该仔细检查。
posted @ 2018-12-13 11:32  ybpx  阅读(127)  评论(0编辑  收藏  举报