关于无限制商品分类。。。

7xin 2005-03-24 04:10:33
Product_Class表结构数据如下:
**********************************************************
Pclass_Id Pfclass_Id Pcalss_Name Pclass_Switch
1 0 电子产品 0
2 0 农产品 0
3 1 电脑 0
4 3 笔记本 0
5 4 TCL 0
6 2 粮食 0
7 6 大米 0
**********************************************************

现在我不知道怎样来写sql,一一读取相应的类别链路..
例如读取的结果:
电子产品---电脑---笔记本---TCL
农产品-----粮食----大米

所以发贴求助,还望大人们给写一下C#.net源码,谢谢!
...全文
88 点赞 收藏 9
写回复
9 条回复
7xin 2005年03月27日
sql="select a.* from [Product_Class] a,f_cid("+newID+")b where a.[PClass_Id]=b.[id]";
请问,这样一个语句,怎样来得到它的count
我写成
sql="select a.*,count(a.[PClass_Id]) from [Product_Class] a,f_cid("+NewID+")b where a.[PClass_Id]=b.[id] GROUP BY a.PClass_Id,a.PFather_Id,a.PClass_Name,a.PClass_Sequ,a.PClass_Grade,a.PSon_Switch";

结果都是1,其实应该等于7的
回复 点赞
corbet 2005年03月27日
顶回去!
回复 点赞
sskset 2005年03月25日
这个表建得不好

建议把

1 0 电子产品 0
2 0 农产品 0

单独放在一个表中
回复 点赞
tajlolo 2005年03月25日
知道如何用C#打造树结构,你就知道怎么递归。
回复 点赞
7xin 2005年03月25日
上面这段代码,没看懂。。。哪位还有代码发来,看看好吗?
回复 点赞
JasonHeung 2005年03月24日
public class ProductType
{
public ProductType()
{
}
public int parentid;
public int id;
public string name;
public bool productSwitch;
}
public class ProductTypeManager
{
public void Add(ProductType pt)
{
m_Product.Add(pt.id,pt);
}

Hashtable m_Product = new Hashtable();

public DataSet ReadData(string tableName)
{
}

public int Init()
{
DataSet ds = ReadData(xxx);
int i;
ProductType pt;
for (i = 0 ; i < ds.Tables[0].Rows.Count; ++i)
{
pt = new ProductType();
pt.id = (int)ds.Tables[0].Rows[i]["id"];
.....
Add(pt);
}
}
}

回复 点赞
ChenZhi_cz 2005年03月24日
这样的表需要递归,记录稍微多一点就非常慢。建议修改表的结构
或者先写一个存储过程整理一下
C#.net源码部分并不难。和一般的访问数据库差不多
回复 点赞
jonescheng 2005年03月24日
不知道你意思,不好回贴。。
回复 点赞
7xin 2005年03月24日
没人回复啊?倒地!
回复 点赞
发动态
发帖子
C#
创建于2007-09-28

8.5w+

社区成员

64.0w+

社区内容

.NET技术 C#
社区公告
暂无公告