Foros del Web » Programación para mayores de 30 ;) » .NET »

Leer vista utilizando Sql Server 2005

Estas en el tema de Leer vista utilizando Sql Server 2005 en el foro de .NET en Foros del Web. Buenas a todos: Estoy realizando una aplicación web utilizando Visual Studio 2005 y Sql Server 2005 para almacenar los datos. Para llamar a un procedimiento ...
  #1 (permalink)  
Antiguo 25/03/2008, 03:56
Avatar de jabi  
Fecha de Ingreso: noviembre-2006
Mensajes: 120
Antigüedad: 17 años, 5 meses
Puntos: 1
Leer vista utilizando Sql Server 2005

Buenas a todos:

Estoy realizando una aplicación web utilizando Visual Studio 2005 y Sql Server 2005 para almacenar los datos.

Para llamar a un procedimiento almacenado, hago de la siguiente forma, os copio simplemente las líneas básicas para explicaros el funcionamiento:

Código:
    comando.CommandText = "NombreProcedimiento";
                comando.CommandType = CommandType.StoredProcedure;
                dr = comando.ExecuteReader();
El nombre del procedimiento lo he puesto directamente pero en la aplicación se obtiene de un fichero xml, con la siguiente forma:

Código:
<ComandosSQL>
  <Comando>
    <Nombre>NombreProcedimiento</Nombre>
    <Sentencia>
      <![CDATA[NombreProcedimiento]]>
    </Sentencia>
  </Comando>
</ComandosSQL>
Pues bien, esto me funciona perfectamente, pero quiero realizar algo parecido para obtener los datos desde una vista. El problema es que utilizo:

Código:
comando.CommandType = CommandType.TableDirect;
...pero TableDirect sólo sirve para conexiones con OLEDB, no para SQL.

¿A alguien se le ocurre como podría ejecutar una vista a partir de su nombre obtenido del fichero xml?

Saludos y gracias por anticipado.
__________________
No estoy aquí de vacaciones, creéme.
  #2 (permalink)  
Antiguo 25/03/2008, 13:49
Avatar de jlbautista  
Fecha de Ingreso: enero-2007
Ubicación: Durango, Méx.
Mensajes: 175
Antigüedad: 17 años, 3 meses
Puntos: 1
Re: Leer vista utilizando Sql Server 2005

Usa
Código:
comando.CommandType = CommandType.Text;
comando.ExecuteNonQuery();
Espero q te funcione
  #3 (permalink)  
Antiguo 26/03/2008, 06:52
Avatar de jabi  
Fecha de Ingreso: noviembre-2006
Mensajes: 120
Antigüedad: 17 años, 5 meses
Puntos: 1
Re: Leer vista utilizando Sql Server 2005

Lo primero gracias por responder

El problema es que en el fichero xml simplemente se está guardando el nombre de la vista, con lo que si hago eso lo interpreta como una sentencia sql y por lo tanto no vale.

Al final he optado por introducir en el XML una sentencia que recoja los datos de la vista, seleccionando todo, ya que no creo que exista forma de referirse al nombre de una vista como se hace con un procedimiento almacenado.

Lo interesante es que funcione para OLEDB

Saludos y gracias de nuevo.
__________________
No estoy aquí de vacaciones, creéme.
  #4 (permalink)  
Antiguo 27/03/2008, 14:57
Avatar de jlbautista  
Fecha de Ingreso: enero-2007
Ubicación: Durango, Méx.
Mensajes: 175
Antigüedad: 17 años, 3 meses
Puntos: 1
Re: Leer vista utilizando Sql Server 2005

Tienes Razón, no había terminado de divagar sobre el procedimiento en el q cae el resultado de tu XML...

Y tmb es cierto lo q dices, puesto q una vista es una abstracción entre tablas, para referirse a los datos contenidos en ella deberías generar un QUERY.
Pq no buscas la forma de generar ese Query y solo recibir dentro del mismo el valor del nombre de la vista de tu XML?

Una disculpa y seguimos por aqui revisando si se te puede ayudar...
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 15:58.