表一:SORT
ID Sort Compositor
主键 一级名称 序号
表二: Small_Sort
ID Parent_Sort Small_Sort Compositor
主键 父ID 名称 序号(不重复)
表三: Three_Sort
ID Sort Small_Sort Three_Sort Compositor
主键 一级父ID 二级父ID 名称 序号(不重复)SqlDataAdapter cmd1 = new SqlDataAdapter("select Sort,compositor from sort order by Compositor", dbClass.Con);
DataSet ds = new DataSet();
cmd1.Fill(ds, "Sort");
SqlDataAdapter cmd2 = new SqlDataAdapter("select Small_Sort,compositor,Parent_Sort from small_sort order by Compositor", dbClass.Con);
cmd2.Fill(ds, "Small_Sort");
SqlDataAdapter cmd3 = new SqlDataAdapter("SELECT Sort ,Small_Sort as b,Compositor,Three_Sort FROM Three_Sort order by Compositor", dbClass.Con);
cmd3.Fill(ds, "Three_Sort");
//DataRelation dr = new DataRelation("myrelation", ds.Tables["Sort"].Columns["Compositor"], ds.Tables["Small_Sort"].Columns["Parent_Sort"]);
//ds.Relations.Add(dr);
//dr = new DataRelation("myrelation2", ds.Tables["Small_Sort"].Columns["Compositor"], ds.Tables["Three_Sort"].Columns["Small_Sort"]);
//ds.Relations.Add(dr);
ds.Relations.Add("myrelation",
ds.Tables["Sort"].Columns["Compositor"],
ds.Tables["Small_Sort"].Columns["Parent_Sort"]);
ds.Relations.Add();
ds.Relations.Add("myrelation2",
ds.Tables["Small_Sort"].Columns["Compositor"],
ds.Tables["Three_Sort"].Columns["Small_Sort"]);
repeaterCatalog.DataSource = ds.Tables["Sort"];
repeaterCatalog.DataBind();
ds.Clear();
dbClass.Close();
出现错误:这些列当前不具有唯一值。
ID Sort Compositor
主键 一级名称 序号
表二: Small_Sort
ID Parent_Sort Small_Sort Compositor
主键 父ID 名称 序号(不重复)
表三: Three_Sort
ID Sort Small_Sort Three_Sort Compositor
主键 一级父ID 二级父ID 名称 序号(不重复)SqlDataAdapter cmd1 = new SqlDataAdapter("select Sort,compositor from sort order by Compositor", dbClass.Con);
DataSet ds = new DataSet();
cmd1.Fill(ds, "Sort");
SqlDataAdapter cmd2 = new SqlDataAdapter("select Small_Sort,compositor,Parent_Sort from small_sort order by Compositor", dbClass.Con);
cmd2.Fill(ds, "Small_Sort");
SqlDataAdapter cmd3 = new SqlDataAdapter("SELECT Sort ,Small_Sort as b,Compositor,Three_Sort FROM Three_Sort order by Compositor", dbClass.Con);
cmd3.Fill(ds, "Three_Sort");
//DataRelation dr = new DataRelation("myrelation", ds.Tables["Sort"].Columns["Compositor"], ds.Tables["Small_Sort"].Columns["Parent_Sort"]);
//ds.Relations.Add(dr);
//dr = new DataRelation("myrelation2", ds.Tables["Small_Sort"].Columns["Compositor"], ds.Tables["Three_Sort"].Columns["Small_Sort"]);
//ds.Relations.Add(dr);
ds.Relations.Add("myrelation",
ds.Tables["Sort"].Columns["Compositor"],
ds.Tables["Small_Sort"].Columns["Parent_Sort"]);
ds.Relations.Add();
ds.Relations.Add("myrelation2",
ds.Tables["Small_Sort"].Columns["Compositor"],
ds.Tables["Three_Sort"].Columns["Small_Sort"]);
repeaterCatalog.DataSource = ds.Tables["Sort"];
repeaterCatalog.DataBind();
ds.Clear();
dbClass.Close();
出现错误:这些列当前不具有唯一值。
ds.Relations.Add("myrelation2", ds.Tables["Small_Sort"].Columns["ID"], ds.Tables["Three_Sort"].Columns["Small_Sort"]);
参数名: column
表三的Sort 对应表二的 Parent_Sort Small_Sort对应表二的Compositor
表SORT
Sort compositor
A 1
B 3
C 4
D 5
表Small_Sort
Small_Sort composistor parent_Sort
A 1 1
B 1 3
C 2 3
表Three_Sort
Small_Sort composistor Three_Sort
1 1 A
1 1 B
1 2 B
ds.Relations.Add("myrelation2",
ds.Tables["Small_Sort"].Columns["Compositor"],
ds.Tables["Three_Sort"].Columns["Small_Sort"]); Small_Sort表里的Composistor不是重复了吗?