给梦一个奔跑的方向!
PDF Print E-mail
User Rating: / 0
PoorBest 
Written by xlingfairy
Tuesday, 08 September 2009 16:44
        string query = @"
            SELECT 
           M.*,
           (SELECT COUNT(1) FROM CSK_Store_Product WHERE ManufacturerID = M.ManufacturerID) AS CNT
            FROM
           (
           SELECT 
           ManufacturerID,ManufacturerName,CreatedOn
           FROM 
           CSK_Store_Manufacturer
           WHERE
           ManufacturerName LIKE '%@MName%'
           ) M
        ";
 
        StoredProcedure sp = new StoredProcedure("");
        sp.Command.CommandType = CommandType.Text;
        sp.Command.CommandSql = query;
        sp.Command.AddParameter("@MName", txtManufacturer.Text.Trim());
        sp.Execute();
 
        gd1.DataSource = sp.GetDataSet();
        gd1.DataBind();
 
看这一段,你能看出什么问题吗?
参数解析出来是对的,SQL语句执行也是有结果的.
可是,这是错的...没有数据被选出来...
 
晕的我差点睡着了...
正确的写法是:
 
        string query = @"
            SELECT 
           M.*,
           (SELECT COUNT(1) FROM CSK_Store_Product WHERE ManufacturerID = M.ManufacturerID) AS CNT
            FROM
           (
           SELECT 
           ManufacturerID,ManufacturerName,CreatedOn
           FROM 
           CSK_Store_Manufacturer
           WHERE
           ManufacturerName LIKE @MName
           ) M
        ";
 
百分号在 AddParameter 的时候加入.
Last Updated ( Tuesday, 08 September 2009 16:46 )
 

Add comment


Security code
Refresh

Popular Contents

Recommend

Site Info

Members : 1
Content : 130
Web Links : 7
Content View Hits : 99644

Links