C# SqlDataAdapter 与来自多个数据库的表的 JOIN

     2023-05-08     210

关键词:

【中文标题】C# SqlDataAdapter 与来自多个数据库的表的 JOIN【英文标题】:C# SqlDataAdapter with JOIN of tables from multiple databases 【发布时间】:2020-04-15 12:22:58 【问题描述】:

由于定义 SqlDataAdapter 的 sintax 是:

SqlDataAdapter adapter = new SqlDataAdapter(querystring, connectionstring);

如何连接来自多个数据库的表并使用单个连接字符串?

谢谢。

【问题讨论】:

【参考方案1】:

根据您的数据库,可能会使用 DBLink。

例如对于甲骨文: https://oracle-base.com/articles/misc/managing-database-links

这在数据库级别将数据库连接在一起,并允许某些表、视图等可用于从一个数据库到另一个数据库的定义操作。

然后,从用户的角度来看,您只需连接到一个 DB,执行您的查询,然后它可以使用从多个 DB 连接的表,甚至不知道。

但也有缺点,包括安全性(更复杂的安全性)和性能。

在某些情况下,分别在两个 DB 上执行两个查询,然后将数据连接到应用程序的内存中可能会有所帮助。 但只有您可以判断,并且可能需要运行测试来验证哪个最适合您。

【讨论】:

我同意 jason.kaisersmith,最好的方法是在不同的连接中加载数据,然后加入它们。我建议使用DataSet 对象来提高性能。

创建新的 SqlDataAdapter 时出现 C# InvalidOperationException

】创建新的SqlDataAdapter时出现C#InvalidOperationException【英文标题】:C#InvalidOperationExceptionwhencreatinganewSqlDataAdapter【发布时间】:2017-03-1001:06:29【问题描述】:我已经编写了一些代码来建立与SQLServer的连接,然后执行select过程以从我... 查看详情

C# SqlDataAdapter.Update()

】C#SqlDataAdapter.Update()【英文标题】:【发布时间】:2010-07-1208:39:42【问题描述】:我要疯了。我做了ff:创建数据表。通过SqlDataAdapter从SQL数据库填充它。通过datagridview编辑数据表。调用sqldataadapter.update但更改不会持久化到数据... 查看详情

C# SqlDataAdapter 不填充数据集

】C#SqlDataAdapter不填充数据集【英文标题】:C#SqlDataAdapternotpopulatingDataSet【发布时间】:2010-04-2017:16:12【问题描述】:我已经搜索了网络并搜索了网络,但并没有完全找到我可能遇到的问题。我目前在获取SqlDataAdapter来填充DataSet... 查看详情

C# SQLDataAdapter - 不将数据插入数据库

】C#SQLDataAdapter-不将数据插入数据库【英文标题】:C#SQLDataAdapter-NotinsertingdataintoDB【发布时间】:2015-09-0320:58:28【问题描述】:这是我得到的:用户从数据库名称的复选框中选择一个他们想要归档的数据库名称。切换大小写以捕... 查看详情

在 C# 中使用 SqlDataAdapter 更新数据库

】在C#中使用SqlDataAdapter更新数据库【英文标题】:updatedatabaseusingSqlDataAdapterinC#【发布时间】:2015-09-2011:33:30【问题描述】:我有以下代码可以在单击按钮时更新我的​​数据库表,但它不起作用。protectedvoidButton_Click(objectsender,E... 查看详情

C# SqlDataAdapter.Fill 在传递数据表参数时给出关于数据转换的错误

】C#SqlDataAdapter.Fill在传递数据表参数时给出关于数据转换的错误【英文标题】:C#SqlDataAdapter.Fillgivingerroraboutdataconversionwhenpasseddatatableparameter【发布时间】:2010-08-1815:26:28【问题描述】:我正在尝试使用C#中的SqlDataAdapter填充数据... 查看详情

无法在 c# 中使用 SqlDataAdapter 和 MSSqlServer 插入数据库

】无法在c#中使用SqlDataAdapter和MSSqlServer插入数据库【英文标题】:CannotInsertintoDatabasewithSqlDataAdapterandMSSqlServerinc#【发布时间】:2014-11-1821:22:18【问题描述】:我想用DataAdapter将新记录插入到DataTable中。Person表中有2列。名字和姓氏... 查看详情

c#中关于sqldataadapter的update(datatable)方法

...;一种就是sql语句的update,第二种就是我接下来要说的SqlDataAdapter的Update()方法。运用SqlDataAdapter的Update()方法可以很方便的将对一张数据表进行大量修改。大致做法如下:首先定义一个SqlDataAdapterSqlDataAdapteradapt 查看详情

SqlDataAdapter 与 SqlDataReader

】SqlDataAdapter与SqlDataReader【英文标题】:SqlDataAdaptervsSqlDataReader【发布时间】:2009-11-0421:30:06【问题描述】:使用从数据库获取数据有什么区别?我正在专门研究它们的优缺点以及它们的速度和内存性能。谢谢【问题讨论】:【... 查看详情

c# SqlDataAdapter 不返回结果

】c#SqlDataAdapter不返回结果【英文标题】:c#SqlDataAdapterdoesn\'treturnresults【发布时间】:2018-08-1813:33:03【问题描述】:由于某种原因,我的函数有时不返回查询结果,尽管它应该(在SQLStudio中运行)。我知道代码不是很干净而且有... 查看详情

SqlDataAdapter.Update(数据表)不工作(不更新数据库)

】SqlDataAdapter.Update(数据表)不工作(不更新数据库)【英文标题】:SqlDataAdapter.Update(datatable)isnotworking(notupdatingthedatabase)【发布时间】:2016-04-0516:34:30【问题描述】:我有下面的代码,我试图从Windows应用程序中所做的c#网格视... 查看详情

在 C# SqlDataAdapter Fill 中可以返回多少列是不是有硬性限制?

】在C#SqlDataAdapterFill中可以返回多少列是不是有硬性限制?【英文标题】:IsthereahardlimitastohowmanycolumnscanbereturnedinC#SqlDataAdapterFill?在C#SqlDataAdapterFill中可以返回多少列是否有硬性限制?【发布时间】:2014-01-0717:16:48【问题描述】:... 查看详情

求dataset与dataadapter的区别?

SqlDataAdapter是DataSet和SQLServer之间的桥接器,用于检索和保存数据。SqlDataAdapter通过对数据源使用适当的Transact-SQL语句映射Fill(它可更改DataSet中的数据以匹配数据源中的数据)和Update(它可更改数据源中的数据以匹配DataSet中的数... 查看详情

如何将来自用户的输入图像与 C# 中数据库中存储的图像进行比较 [关闭]

】如何将来自用户的输入图像与C#中数据库中存储的图像进行比较[关闭]【英文标题】:HowtocompareaninputimagefromuserwithastoredimageonthedatabaseinC#[closed]【发布时间】:2015-01-1318:56:42【问题描述】:我正在尝试创建一个Windows窗体应用程序... 查看详情

使用一个 SqlDataAdapter 运行多个存储过程

】使用一个SqlDataAdapter运行多个存储过程【英文标题】:RunningmultiplestoredprocedureswithoneSqlDataAdapter【发布时间】:2013-12-1912:54:12【问题描述】:我的问题:有没有办法像这样使用一个SqlDataAdapter运行多个存储过程adapter=newSqlDataAdapter... 查看详情

SqlDataAdapter.Fill() "=" C# 附近的语法不正确

】SqlDataAdapter.Fill()"="C#附近的语法不正确【英文标题】:SqlDataAdapter.Fill()incorrectsyntaxnear"="C#【发布时间】:2018-06-2205:31:01【问题描述】:我收到了这个错误“=”附近的语法不正确我收到这个错误就行了sda.Fill(dt);我... 查看详情

数据绑定:将来自侦听器的单个方法与多个方法绑定

】数据绑定:将来自侦听器的单个方法与多个方法绑定【英文标题】:Databinding:Bindsinglemethodfromlistenerwithmultiplemethods【发布时间】:2017-01-0616:17:26【问题描述】:AndroidUIToolkit团队的YigitBoyar和GeorgeMount成员提供了talkondatabinding。在1... 查看详情

使用 ADO.NET SqlDataAdapter 更新单个记录

】使用ADO.NETSqlDataAdapter更新单个记录【英文标题】:UpdateSingleRecordwithADO.NETSqlDataAdapter【发布时间】:2013-10-2112:16:49【问题描述】:我正在使用C#在Windows窗体上使用SqlDataAdapter。我有一个BindingSource将其链接到我的字段,并通过功... 查看详情