Excluir rows de um dataset

26/10/2012

Olá
Hoje, Carrego a pesquisa dos dois bancos e largo em dois gridview
gostaria de ao fazer o primeiro sql carregar no dataset, e com o segundo sql comparar no dataset
akele que for igual excluir para entao sim largar no gridview apenas oq esta a mais
Segue codigo atual:
**********************************************
FbConnection Conn1 = new FbConnection(BANCO 1);
Conn1.Open();
FbDataAdapter ad1 = new FbDataAdapter("id", Conn1);
DataSet ds1 = new DataSet();
ad1.Fill(ds1, "CADASTRO");

GridView1.DataSource = ds1;
GridView1.DataBind();
Conn1.Close();

FbConnection Conn = new FbConnection(banco 2");
Conn.Open();
FbDataAdapter ad = new FbDataAdapter("id", Conn);
DataSet ds = new DataSet();
ad.Fill(ds, "CADASTRO");

GridView2.DataSource = ds;
GridView2.DataBind();
Conn.Close();
************************************************
Desde ja agradeço

Jorge Meneses

Respostas

26/10/2012

Robson Robsonalves.net

Dica: pq não faz isso direto no SQL?

Eu já precisei fazer isso, adaptei uma solução via SQL utilizando Except.

[url]http://weblogs.sqlteam.com/jeffs/archive/2007/05/02/sql-server-2005-using-except-and-intersect-to-compare-tables.aspx[/url]
Responder Citar

26/10/2012

Jorge Meneses

Oi ou vc nao me entendeu ou eu naote entendi
Pois são banco de dados diferentes e no seu exemplo sao tabelas diferentes
mesmo assim obrigado
Responder Citar

26/10/2012

Jorge Meneses

humm mas posso largar em tabelas temporarias
é foi util valeu rsrsrs
Responder Citar

26/10/2012

Robson Robsonalves.net

Oi ou vc nao me entendeu ou eu naote entendi Pois são banco de dados diferentes e no seu exemplo sao tabelas diferentes mesmo assim obrigado


Apesar de serem bancos diferentes, você consegue visualizar as tabelas na mesma query, utilizando:

dbo.Banco.Tabela.Coluna;

Eu passei essa dica, pois se você tem que remover os dados que são diferentes (a mais) eu entendo que eles possuem a mesma informações.

Caso eles estejam em instâncias separadas, você pode fazer linked server.


---

Caso você realmente deseja fazer isso via C#, você vai precisar remontar seu segundo datasource, isso significa que terá que fazer For ou Foreach, do primeiro datasource comparando com o segundo e cada informação que exista no segundo de diferente você inclui em um List<> e repassa para o gridView.



Responder Citar