数据库连接 - gridview中显示的结果

时间:2011-12-14 20:16:04

标签: asp.net c#-4.0 gridview

我在三个不同的服务器上有三个数据库需要加入并在asp:gridview中显示结果。我现在的查询是asp:SqlDataSource使用连接字符串到一个数据库的结果,但我的问题是我为其他两个数据库指定了服务器,数据库和表。

  1. 如何修改我的查询以使用连接字符串到所有 数据库(C#,asp示例)?
  2. 我是在aspx文件中查询还是应该在cs文件中进行查询?
  3. 如果我在cs文件中进行连接,如何将结果附加到gridview?一旦我离开这个页面并返回,数据可能会有所不同。
  4. 我当前的<asp:SqlDataSource>代码就是这个 -

    <asp:SqlDataSource ID="SqlDataSource1" runat="server" 
    ConnectionString="<%$ ConnectionStrings:ConnectionString %>" 
    SelectCommand="SELECT DISTINCT A.batchname AS IndexBatchNumber, a.clientkey, a.packagetrackingid, a.statusflag, f.Name AS Client, SELECT GroupValue FROM FSDev.dbo.ClientGroup WHERE ClientKey = a.clientkey AND GroupCode = 'TIME ZONE') AS Timezone, (SELECT fc.special_instr FROM SQL2.sysdba.FC_SLX_TEST.FC_PKG_TRKG fc WHERE
    fc.fc_Pkg_trkgid = a.PackageTrackingID) AS RushFunding FROM BatchExport a, InvoiceExport b, FSDev.dbo.Clients f WHERE a.batchname = b.batchname AND a.clientkey = f.ClientKey AND a.statusflag = 1 "></asp:SqlDataSource>
    

1 个答案:

答案 0 :(得分:0)

我已经能够通过做两件事来解决这个问题。由于数据库都是MSsql,我使用链接功能将它们连接在一起。这样我只需要一个连接字符串。为了在移动到生产服务器时不必更改SQL代码,我让DBA为我的所有查询创建存储过程。这样我只需要更改连接字符串。