общее табличное выражение в SQL Server 2008 - PullRequest
0 голосов
/ 03 марта 2011

если можно напрямую вызвать CTE до-диез .. Может кто-нибудь сказать мне, как вызвать CTE до-диез ??

Ответы [ 2 ]

5 голосов
/ 03 марта 2011

CTE в SQL Server является частью обычного оператора SQL-запроса, поэтому все, что вы делаете для выполнения SQL-запроса, также будет работать с CTE:

string cteQuery = ";WITH yourCTE AS (SELECT .... FROM :... WHERE.....) SELECT * FROM yourCTE";

using(SqlConnection _con = new SqlConnection(connectionString))
using(SqlCommand _cmd = new SqlCommand(cteQuery, _con))
{
   // provide parameters to the query, if needed

   _con.Open();

   using(SqlDataReader rdr = _cmd.ExecuteReader())
   {
       while(rdr.Read())
       {
          // grab your data from the data reader here
       }

       rdr.Close();
   }

   _con.Close();
}

Или что ты пытаешься сделать ??

0 голосов
/ 03 марта 2011

CTE является лишь частью запроса T-SQL, поэтому выполнение оператора из C # должно вызвать CTE.Я не уверен, что это отвечает на ваш вопрос?

...