Complete datos de múltiples consultas en la misma fuente de datos
Autor:Eve Cole
Fecha de actualización:2009-07-01 16:14:59
DataSet se utiliza a menudo como fuente de datos del control al escribir código. Por lo general, un control solo puede vincularse a una fuente de datos. Si desea vincular los resultados de varias consultas a la base de datos a un control, debe completar los resultados de varias consultas en la misma fuente de datos. Por supuesto, esta función también se puede implementar dibujando tablas dinámicamente, pero creo que el procesamiento dinámico de tablas es demasiado problemático. La siguiente prueba se realizó para este propósito y fue exitosa. La compartiré ahora.
Principio: complete los resultados de múltiples consultas en la misma tabla del mismo conjunto de datos, pero al completar dos veces, los campos deben tener el mismo alias; de lo contrario, aparecerán filas NULL innecesarias.
El código es el siguiente:
1datos vacíos privados()
2 {
3 cadenas sql1="seleccione xqid como yhm, xqmc como zsxm de xt_xq";//
4 string sql2="select xt_zdb_style as yhm, descripción como zsxm de xt_zdb";//sql1 y sql2 usan los mismos alias de campo yhm y zsxm
5 usando (conexión OracleConnection = nueva OracleConnection ("Fuente de datos = abeen; ID de usuario = sistema; Contraseña = abeen;"))
6 {
7 Conjunto de datos ds = nuevo Conjunto de datos();
8 intento
9 {
10 conexión.Open();
11 Comando OracleDataAdapter = nuevo OracleDataAdapter(sql2,conexión);
12 command.Fill(ds,0,5,"TableName");//Completar datos en TableName por primera vez
13 comando = nuevo OracleDataAdapter(sql1,conexión);
14 command.Fill(ds,"TableName");//Complete datos en TableName por segunda vez
15
16 this.DataGrid1.DataSource=ds;//Los resultados de los dos llenados están en el TableName de ds
17 this.DataGrid1.DataBind();
18}
19 captura (System.Data.OracleClient.OracleException ex)
20 {
21 lanza una nueva excepción (por ejemplo, mensaje);
Veintidós }
veintitrés
veinticuatro}
25}
http://www.cnblogs.com/abeen/archive/2006/11/21/567893.html