【发布时间】:2014-07-25 21:55:56
【问题描述】:
我需要从 SQL 数据库中读取数据并在表中创建以下结果:
DATABASE
=========
Server, Site Name, Status
001, Site 1, Down
002, Site 1, Up
003, Site 2, Up
004, Site 2, Down
001, Site 3, Up
005, Site 4, Down
- 站点 1:它存在于 2 个服务器(001、002)中
- 站点 2:它存在于 2 个服务器(003、004)中
- 站点 3:它仅存在于 1 个服务器 (001) 中
- 站点 4:它仅存在于 1 个服务器 (005)
结果:
@@@@@@@@@@@@@@@@@@@@@@@
站点名称 1 = 1 长列
@@@@@@@@@@@@@@@@@@@@@@@
服务器 1 = 第 1 列 ||服务器 2 = 第 2 列
@@@@@@@@@@@@@@@@@@@@@@@
站点名称 2 = 1 长列
@@@@@@@@@@@@@@@@@@@@@@@
服务器 1 = 第 1 列 ||服务器 2 = 第 2 列
@@@@@@@@@@@@@@@@@@@@@@@
这是我的 C# 代码
SqlConnection myConnection = new SqlConnection("my connection");
string SqlCon = "SELECT distinct(Site_Name) as SN FROM TABLE;";
using (myConnection)
{
myConnection.Open();
SqlDataAdapter da1 = new SqlDataAdapter(SqlCon, myConnection);
DataTable dt = new DataTable();
da1.Fill(dt);
foreach (DataRow dr in dt.Rows) //IS THIS CORRECT?
{
string SqlCon2 = "SELECT * FROM LIVEWEBSITES WHERE Site_Name='" + dr["SN"].ToString() + "';";
//Crete the table and populate it here
if Status==Down then bgcolor of the cell = RED
else bgcolor = GREEN
}
MyGridView.DataSource = dt;
MyGridView.DataBind();
}
第一个 SQL 查询是只选择有区别的站点
然后使用该信息我执行另一个 SQL 查询以选择所有信息并相应地填充表
我该怎么做?
【问题讨论】:
-
也许 LINQ 会更好地满足我的需求?如果有,怎么做?